Прикладные свободные программы и системы в школе   ::   Отставнов Максим

Страница: 129 из 238



Функции и вызов других сценариев

В сценарии на языке оболочки можно определить подпрограммы-функции. В функции определенными являются переменные, определенные сценарием (или его окружением) на момент вызова функции. Однако сама функция должна быть объявлена до ее вызова. Кроме того, функции при вызове можно передавать параметры (как любой команде), которые она может адресовать способом, указанным выше (Рис. 1-88).

Определение функции имеет вид, указанный на Рис. 1-89.

Рис. 1-89



Вызывается функция простым указанием ее имени в качестве команды (см. Рис. 1-90).

Рис. 1-90



Раскрытие команды

Крайне занимательной является возможность раскрыть целую команду, то есть включить в командную строку ее стандартный вывод. Для этого команда заключается в обратные апострофы «`» и «`», которые не следует путать ни с одиночными прямыми апострофами, ни с кавычками.

Рис. 1-91



В примере на Рис. 1-91 команда «echo» подается с тремя операндами, первый и последний из которых являются текстовыми константами, а второй — результатом раскрытия команды «ls *~ *.tmp», то есть списком файлов, соответствующих первому и второму шаблонам, указанным в качестве операндов команды «ls».

Включенный документ

В некотором смысле обратной по отношению к раскрытию команды с помощью обратных апострофов является конструкция включенного документа (или, конструкция «документ здесь»).

На Рис. представлена конструкция вида «<<цепочка», внешне похожая на перенаправление ввода команды из файла.

|< Пред. 127 128 129 130 131 След. >|

Java книги

Контакты: [email protected]