Материалы к практикуму 5

Наиболее употребительные команды UNIX

pwd сообщает полное имя текущей директории
ls показывает содержимое текущей директории
cp <имя файла 1> <имя файла 2> копирует файл 1 в файл 2
mv <имя файла 1> <имя файла 2> переименовывает файл
mv <имя файла> <имя поддиректории>   перемещает файл в поддиректорию
rm <имя файла> уничтожает файл
mkdir <имя поддиректории> создает поддиректорию
cd <имя поддиректории> переход в поддиректорию
cd .. выход из поддиректории (переход в родительскую директорию)
more <имя файла> просмотр содержимого файла (клавишами "пробел" и "Enter")
man <команда> выдает подробную информацию о команде

 

Более подробный список команд:

EMBnet Quick Guide to UNIX (pdf file)

 

Перенаправление вывода

Символ > используется в интерпретаторах командной строки bash и tcsh для перенаправления стандартного вывода (stdout) команды в файл. Например, команда
 ls > cur_dir.txt
приведет к тому, что список файлов текущей директории окажется в файле cur_dir.txt При этом, если файл с таким именем уже существовал, то его старое содержимое исчезнет.

Чтобы дописать stdout команды в конец уже существующего файла, используется сочетание символов >>. Например, команда

 cat file2.txt >> file1.txt
приведет к тому, что в файле file1.txt после его старого содержимого окажется еще и содержимое файла file2.txt (что делает команда cat, тем самым нетрудно догадаться).

Чтобы записать в файл stderr команды, в bash можно применить сочетание символов 2>, например:

 entret -help 2> entret.help
(entret, как и другие программы пакета EMBOSS, выдаёт свой help на stderr).

В tcsh сочетание 2> не действует, зато сочетание >& направляет в файл и stdout, и stderr.

Для направления stdout одной команды на вход (stdin) другой команды используется "pipe" (конвейер), задаваемый знаком | , например:

 ls -l | more
позволяет просмотреть программой more информацию о файлах в текущей директории.

К сожалению, в bash нет простого способа направить в конвейер stderr, равно как и добавить stderr в конец существующего файла. Если такое очень нужно, придется поменять интерпретатор, выполнив команду

tcsh
а затем использовать сочетания  |&  (для конвейера stderr → stdin) и  >>&  (для добавления stderr в конец файла). Чтобы потом вернуться в bash, достаточно выполнить команду exit.

Список спецсимволов bash

Пробел (а также табулятор и перенос строки);
кавычки (" и '), обратная косая черта ( \ )
*  ?  [  ]  {  } 
>  <  |  ;  & 
$  !  (  ) ` ~ #

Online-учебники по UNIX