Основы операционной системы UNIX


         

Метасимволы командного интерпретатора


Ряд символов, как было описано выше, имеют для командного интерпретатора специальное значение - это метасимволы. Они описаны в табл. 23.

Метасимволы не входят в команды и обрабатываются в несколько проходов до начала выполнения реальных программ.

Таблица 23. Метасимволы командного интерпретатора

Метасимвол Интерпретация
>prog>file - переключить стандартный выходной поток в файл
>>prog>>file - добавить стандартный выходной поток к файлу
<prog<file - извлечь стандартный входной поток из файла
|p1 | p2 - передать стандартный выходной поток p1 как стандартный входной поток p2
<<str"Документ здесь": стандартный входной поток задается в последующих строках до строки, состоящей только из символов str. По умолчанию в данных интерпретируются метасимволы \, $ и ``. Если необходимо предотвратить в данных интерпретацию всех метасимволов, необходимо экранировать строку str, предварив обратной косой или взяв в двойные или одиночные кавычки.
*Задает в имени файла любую строку из нуля или более символов
?Задает любой символ в имени файла
[abc]Задает любой символ из [abc] в имени файла, при этом допускаются диапазоны, задаваемые при помощи дефиса -. Если первым символом после [ является !, с этой конструкцией сопоставляется любой символ, не входящий в квадратные скобки.
;Разделитель команд: p1; p2 - выполнить p1, затем p2.
&

Выполняет предшествующую команду в фоновом режиме

`...`Инициирует выполнение команд(ы) в ...; `...` заменяется на полученный в результате выполнения стандартный выходной поток
(...)Инициирует выполнение команд(ы) ... в порожденном командном интерпретаторе
$1,$2,...$9Заменяются аргументами командного файла
$varЗначение переменной (ключевого параметра) var в сеансе
${var}Значение var: исключает коллизии в случае конкатенации переменной с последующим текстом
\\c - использовать непосредственно символ c, \перевод строки- отбрасывается
'...'Непосредственное использование того, что в кавычках
"..."Непосредственное использование, но после того, как будут интерпретированы метасимволы $, `...` и \
#Начало комментария
var=valueПрисваивает значение value переменной var
p1&&p2

Выполнить p1; в случае успеха выполнить p2

p1p2Выполнить p1; в случае неудачи выполнить p2
<

Содержание  Назад  Вперед