Учебный сайт Олеси Климчук

bash

bash - наиболее распространённая командная оболочка UNIX. Используется в Linux, OS X и других операционных системах.

Потоки данных в bash:
• 0, или stdin (входной поток)
• 1, или stdout (выходной поток с основными результатами работы)
• 2, или stderr (выходной поток с дополнительной информацией - сообщениями об ошибках, предупреждениями и т.п.)

Перенаправление потоков данных в bash

Перенаправление потоков данных в bash
cmd < file взять stdin команды cmd из файла file
cmd 1> file направить stdout команды cmd в файл file
cmd 1>> file дописать stdout команды cmd в конец файла file
cmd 2> file направить stderr команды cmd в файл file
cmd 2>> file дописать stderr команды cmd в конец файла file
cmd &> file направить и stdout и stderr команды cmd в файл file
cmd &>> file дописать и stdout и stderr команды cmd в конец файла file
2>&1 направить stderr в stdout
cmd1 | cmd2 подать stdout команды cmd1 на вход команде cmd2 (конвейер)

Пример:

usr@home:~/term2$ ls
block1 block2 block3
usr@home:~/term2$ ls 1> file
usr@home:~/term2$ cat file
block1 block2 block3
usr@home:~/term2$ █

Метасимволы bash

Метасимволы bash - это символы bash, не несущие текстовой информации.

Метасимволы bash
^ начало строки
$ конец строки или переменная
. любой символ
* ноль или более повторений
+ одно или более повторений
? ноль или одно повторение
a|b a или b
(r) множество r
[r] один из символов из множества r
[^r] любой символ, кроме символов из множества r
r{n} n повторений последовательности r
\a отменить специальное значение метасимвола a (экранирование)
'r' для последовательности r отменить специальное значение всех метасимволов
"r" для последовательности r отменить специальное значение всех метасимволов кроме $ и \
!n n-ая команда из history
cmd1 ; cmd2 выполнить команду cmd1, а затем команду cmd2
cmd & выполнять команду cmd в фоновом режиме
# начало комментария

Литература:

О bash в WikipediA
О регулярных выражениях в WikipediA
О bash в файле "Bash reference card" Наверх
Дата последнего изменения: 10.03.13

© Олеся Климчук, 2012