Unix Man (Справочное руководство)


CSH(1) - часть 2


Простая команда представляет собой последовательность из слов, первое из которых определяет команду, которая должна быть выполнена. Простая команда или последовательность из простых команд, разделенных символом |, формирует конвейер. Выход каждой команды в конвейере связывается со входом следующей команды. Последовательности конвейеров могут быть разделены точкой с запятой, и затем выполняются последовательно. Последовательность конвейеров может быть выполнена, не дожидаясь завершения выполнения последовательности, если за ней следует знак &. Завершение такой последовательности по сигналу разъединения автоматически запрещается; использование команды nohup не требуется.

Любые последовательности из описанных выше могут быть заключены в круглые скобки для того, чтобы сформировать простую команду (которая, в свою очередь, может быть составляющей некоторого конвейера, и т.д.). Кроме того, как и в языке С, можно разделять конвейеры, указав знаки && или , которые означают, что второй конвейер будет выполняться только в случае успешного или неуспешного завершения первого, соответственно. (См. раздел "Выражения".)

Подстановки


Следующие разделы описывают различные преобразования входных данных, выполняемые интерпретатором shell, в том порядке, в каком они встречаются.

Подстановки Предыстории


Подстановки предыстории могут быть использованы для повторного ввода последовательностей слов из предыдущих команд, возможно, модифицированных. Таким образом, подстановки предыстории обеспечивают обобщение функции redo.

Подстановки предыстории начинаются с символа ! и могут начаться в любом месте входного потока, если они уже не выполняются. Символу ! может предшествовать символ \ для отмены его специального назначения; символ ! проходит неизмененным, если за ним следует пробел, знак табуляции, признак новой строки, знак = или знак (. Также, подстановки предыстории могут встречаться, когда входная строка начинается со знака ^. Эта специальная аббревиатура будет описана позже.

Любая входная строка, содержащая подстановку предыстории, отображается перед ее выполнением на терминале так, как если бы она была введена без подстановки предыстории.

Команды, вводимые с терминала, которые состоят из одного или более слов, сохраняются в списке предыстории, размером которого управляет значение переменной history. Предыдущая команда сохраняется всегда. Нумерация команд производится последовательно от 1.

Например, введите команду:




Начало  Назад  Вперед



Книжный магазин