Рис. 1-91 В примере на Рис. 1-91 команда «echo» подается с тремя операндами, первый и последний из которых являются текстовыми константами, а второй – результатом раскрытия команды «ls *~ *.tmp», то есть списком файлов, соответствующих первому и второму шаблонам, указанным в качестве операндов команды «ls».
Включенный документ
В некотором смысле обратной по отношению к раскрытию команды с помощью обратных апострофов является конструкция включенного документа (или, конструкция «документ здесь»).
На Рис. представлена конструкция вида «<<цепочка», внешне похожая на перенаправление ввода команды из файла. Однако цепочка представляет собой не имя файла, а ограничивающую цепочку символов, а сам ввод осуществляется непосредственно из файла сценария (или, в данном случае, с терминала) до тех пор, пока очередная строка не совпадет с ограничивающей цепочкой (Рис. 1-92).
Рис. 1-92 Встроенный документ особенно удобен для сценариев, представляющих сильно параметризованные алгоритмы, указание данных для которых в отдельных файлах привело бы к большому количеству последних.
1.11 Справочник по наиболее употребительным стандартным командам ОС
exit – завершить исполнение оболочки
Синтаксис: exit [код_зав]
Семантика: exit завершает исполнение оболочки с кодом возврата (0-255), указанным в «код_зав». Перехват «exit» командой «trap» выполняется до завершения оболочки, если только «exit» выполняется не из этой команды «trap». Если n не указана, код возврата равен коду возврата последней выполненной команды. При выполнении «exit» из «trap» последней командой считается команда, выполненная непосредственно до выполнения «trap».
cal – вывести календарь
Синтаксис: cal [[месяц] год ]
Семантика: cal выводит на стандартный вывод календарь, используя юлианское летоисчисление для дат с 1 января 1 г. по 2 сентября 1752 г. и григорианское – с 14 сентября 1752 г. по 31 декабря 9999 г.
Операнды: месяц – отображаемый месяц указывается десятичным числом с 1 (январь) по 12 (декабрь). По умолчанию – текущий месяц. Год – отображаемый год указывается десятичным числом с 1 до 9999. По умолчанию – текущий год.
date – вывести или установить дату и время
Синтаксис: date [-u] [ +формат] ; date [-u] ммддччмм[[сс] гг]
Семантика: date выводит дату и время. Поданная с операндом в формате даты, date пытается установить время и дату. Операнд, начинающийся с «+» устанавливает формат вывода данных.
Ключ: -u – выполнить команду, как если бы переменная TZ (часовой пояс) была установлена в «UTC0» или «GMT0» (время по Гринвичу).
Операнды: +формат – если указан формат, каждый спецификатор формата заменяется при выводе на соответствующее значение. Вывод всегда завершается символом новой строки. Поддерживаются спецификаторы «%a» (краткое название дня недели), «%A» (название дня недели), «%b», «%h» (краткое название месяца), «%B» (название месяца), «%с» (дата и время), «%C» (век в двузначном представлении), «%d» (день месяца в двузначном представлении), «%D» (дата в формате мм/дд/гг), «%e» (день месяца в одно– или двузначном представлении), «%H» (час дня в 24-часовом двузначном представлении), «%I» (час дня в 12-часовом двузначном представлении), «%j» (номер дня в году), «%m» (номер месяца в двузначном представлении), «M» (минуты в двузначном представлении), «%n» (конец строки), «%p» (знак «утра» или «пополудни»), «%r» (час дня в двенадцатичасовом представлении со знаком «утра» или «пополудни»), «%S» (секунды в двузначном представлении), «%t» (табуляция), «%T» (время в формате ЧЧ:ММ:СС в 24-часовом представлении), «%u» (порядковый номер дня недели («Пн.»=1), «%U» (порядковый номер недели в году при неделе, начинающейся в воскресенье), «%V» (номер недели в году при неделе, начинающейся в понедельник), «%w» (номер дня недели, начинающейся с воскресенья), «%W» (номер недели, начинающейся в понедельник), «%x» (полное представление даты), «%X» (полное представление времени), «%y» (год в двузначном представлении), «%Y» (год в одно– или двузначном представлении), «%Z» (часовой пояс), «%%» (процент).
Переменные: TZ – часовой пояс, в котором выводится или устанавливается дата.
Вывод: если формат не указан, дата выводится в формате «+%a %b %e %H:%M:%S %Z %Y».
man – вывести системную документацию
Синтаксис: man [-k] имя...
Семантика: man выводит информацию о каждом из перечисленных операндов.