KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программное обеспечение » Максим Отставнов - Свободные программы и системы в школе

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

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Максим Отставнов, "Свободные программы и системы в школе" бесплатно, без регистрации.
Перейти на страницу:

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

Рис. 1-89

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

Рис. 1-90

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

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

Рис. 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 выводит информацию о каждом из перечисленных операндов.

Ключ:–k – интерпретировать операнды как ключевые слова для поиска в базе кратких описаний и вывести строки, в которых содержатся эти слова.

Операнды:имя – ключевое слово или имя команды.

Переменные: PAGER – используемый фильтр постраничного вывода.

echo – вывести аргументы

Синтаксис: echo [строка...]

Семантика: echo выводит свои аргументы после раскрытия специальных символов в стандартный вывод, завершая вывод символом новой строки.

Операнды: строка – строка, подлежащая выводу. В строке после раскрытия спецсимволов оболочки раскрываются следующие символы: a – звуковой сигнал, b – пробел, c – подавить вывод символа новой строки, f – перевод страницы, n – символ конца строки, r – символ возврата каретки, t – табуляция, v – вертикальная табуляция, \ – обратная косая черта, код — символ с восьмеричным кодом «код».

Стандартный вывод: между аргументами выводятся пробелы.

touch – изменить временные атрибуты доступа и модификации файлов

Синтаксис: touch [-acm][ -r справ_файл| -t time]файл...

Семантика: touch изменяет атрибуты времени последней модификации или времени последнего доступа файлов, или (по умолчанию) оба. Значение атрибута указывается аргументом ключа «-t» или заимствуется у файла, указанного в качестве аргумента ключа «-r». Если оно не указано, используется текущее время.

Если файлы не существуют, они создаются.

Ключи: -a – изменить время доступа, -c – не создавать несуществующих файлов, -m – изменить время модификации, -r справ_файл – заимствовать атрибут у файла «справ_файл»; -t время – использовать вместо текущего указанное время в формате «[[ВВ]ГГ]ММДДччмм[.сс]», где ММ – номер месяца, ДД – день месяца, чч – час дня, мм – минуты, ВВ – первые две цифры года, ГГ – последние две цифры года, сс – секунды.

Операнды: файл – имя файла.

ls – вывести содержимое каталога

Синтаксис: ls [-CFRacdilqrtu1][-H | -L ][-fgmnopsx][файл...]

Семантика: Для каждого операнда, именующего файл типа иного, нежели каталог или ссылка на каталог, ls выводит имя и требуемую ключами информацию. Для каждого операнда, именующего каталог или ссылку на каталог, ls выводит имена и требуемую ключами информацию о каждом файле, содержащемся в этом каталоге. Если операнды не указаны, ls выводит информацию о файлах в текущем каталоге. Для ссылок на каталоги выводится информация о каталоге, если даны ключи «-d», «-F» или «-l» и не даны ключи «-H» или «-L», и информация о файлах в каталоге, если не даны ключи «-d», «-F» или «-l» или даны ключи «-H» или «-L».

Важнейшие ключи:-R – выводить рекурсивно информацию о подкаталогах; -a – включить информацию о скрытых файлах (файлах с именами, начинающимися на точку), -l («эль») – выводить информацию в «длинном» формате; -p – выводить после имен каталогов «/»; -t – отсортировать в порядке времени изменения.

Операнды: файл – имя файла.

Переменные:COLUMNS – количество столбцов на терминале; TZ – часовой пояс.

Вывод: по умолчанию выводится по одной записи в строке. -l – выводятся тип и права файла, количество ссылок, имя владельца, имя группы, длина файла, дата и время, имя файла.

rm – удалить записи о файлах

Синтаксис: rm [-fiRr]файл...

Семантика: rm удаляет запись в каталоге для каждого операнда за исключением файлов «.» или «..» в любом каталоге и за исключением (если не даны ключи «-r», «-R») каталогов.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*