Основы работы с командным интерпретатором
слово — последовательность символов, воспринимаемая интерпретатором как одна единица. имя — слово состоящее только из алфавитно-цифровых символов и знаков подчеркивания, начинающееся с буквы или знака подчеркивания. Также называется идентификатором. метасимвол — символ, который, не будучи заключен в кавычки, разделяет слова. Один из следую управляющий оператор —слово выполняющее функции управления. Один из следующих: || & &&;;; () | <newline> Зарезервированные слова — это слова имеющие специальное значение для интерпретатора. Следующие слова являются зарезервированными: ! case do done elif else esac fi for function if in select then until while { } time [[ ]] Простая команда это последовательность из необязательного присвоения значения переменной с последующими словами и перенаправлениями, прерываемая управляющим оператором. Первое слово определяет выполняемую команду. Последующие слова передаются команде в качестве аргументов. [VAR=val] command argument... Возвращаемое значение простой команды — код завершения или 128+n если команда была прервана по сигналу n. Конвейер — последовательность из одной или более команд, разделенных символом |. Формат конвейера следующий: [time [-p]] [!] command [ | command2... ] Стандартный вывод command подключается к стандартному вводу команды command2. Это подключение производится до выполнения любых перенаправлений. Если конвейеру предшествует зарезервированное слово!, то код завершения конвейера равен логическому отрицанию кода завершения последней команды. Иначе код завершения конвейера равен коду завершения последней команды. Интерпретатор ожидает завершения всех команд до того как вернет значение. Если конвейеру предшествует зарезервированное слово time, то после завершения выполнения конвейера будет выведена информация о времени выполнения конвейера и о затраченном времени процессора в режимах пользователя и системы. Каждая команда в конвейере выполняется как отдельный процесс (т.е. в подоболочке).
|