[me@linuxbox ~]$ help cd
cd: cd [-L|-P] [dir]
Change the current directory to DIR. The variable $HOME is the default DIR. The variable CDPATH defines the search path for the directory containing DIR. Alternative directory names in CDPATH are separated by a colon (:). A null directory name is the same as the current directory, i.e. `.'. If DIR begins with a slash (/), then CDPATH is not used. If the directory is not found, and the shell option `cdable_vars' is set, then try the word as a variable name. If that variable has a value, then cd to the value of that variable. The –P option says to use the physical directory structure instead of following symbolic links; the -L option forces symbolic links to be followed3.
Примечание к форме записи: квадратные скобки в описании синтаксиса команды указывают на необязательность элемента. Вертикальная черта используется для перечисления взаимоисключающих вариантов. В примере с описанием команды cd, приведенном выше, ее синтаксис описывается как cd [-L|-P] [dir].
Эта форма записи говорит, что команда cd может принимать необязательный параметр -L или -P и необязательный аргумент dir.
Несмотря на то что help дает краткое и точное описание команды cd, это описание не может служить инструкцией по использованию, и, как вы можете видеть, в нем упоминается многое из того, чего мы еще не знаем! Но не волнуйтесь, со всем этим мы познакомимся в свое время.
--help — вывод инструкции по использованию
Многие выполняемые программы поддерживают параметр --help для вывода описания синтаксиса и параметров, поддерживаемых командой. Например:
[me@linuxbox ~]$ mkdir --help
Использование: mkdir [КЛЮЧ]... КАТАЛОГ...
Создает КАТАЛОГ(и), если он еще не существует.
-Z, --context=CONTEXT установить контекст безопасности SELinux для каждого
создаваемого каталога равным CTX
Аргументы, обязательные для длинных ключей, обязательны и для коротких.
-m, --mode=РЕЖИМ установить код доступа (как в chmod), не a=rwx — umask
-p, --parents не выдавать ошибок, если существует, создавать
родительские каталоги, если необходимо
-v, --verbose печатать сообщение о каждом созданном каталоге
--help показать эту справку и выйти
--version показать информацию о версии и выйти
Об ошибках в mkdir сообщайте по адресу <bug-coreutils@gnu.org>.
Некоторые программы не поддерживают параметр --help, но вы все равно пробуйте передать его. Часто в результате выводится сообщение об ошибке, содержащее ту же информацию о порядке использования.
man — вывод страниц справочного руководства
Большинство программ, предназначенных для использования в командной строке, предоставляют официальную документацию, которую называют страницей справочного руководства (man-страницу). Для просмотра этих страниц используется специальная программа постраничного просмотра man, например:
man программа
где программа — имя команды.
Страницы справочного руководства могут несколько отличаться друг от друга оформлением, но в общем случае содержат заголовок, краткий обзор синтаксиса команды, описание назначения команды и список всех параметров с их описанием. Однако страницы справочного руководства обычно не включают примеры использования, и их главная цель — служить справочником, а не инструкцией по использованию. Для примера попробуйте вывести страницу справочного руководства для команды ls:
[me@linuxbox ~]$ man ls
В большинстве систем Linux man использует less для вывода страницы, поэтому при просмотре страницы можно использовать все известные команды less.
«Руководство», которое отображает man, разбито на разделы и охватывает не только пользовательские команды, но и команды системного администрирования, программные интерфейсы, форматы файлов и многое другое. В табл. 5.1 перечислены разделы справочного руководства.
Таблица 5.1. Организация справочного руководства
Раздел
Содержит
1
Пользовательские команды
2
Программные интерфейсы системных вызовов в ядре
3
Программные интерфейсы в библиотеке C
4
Специальные файлы, такие как узлы устройств и драйверы
5
Форматы файлов
6
Игры и развлечения, такие как хранители экрана
7
Прочее
8
Команды системного администрирования
Иногда, чтобы найти искомое, нужно заглянуть в конкретный раздел. Это актуально для форматов файлов, названия которых часто совпадают с именами команд. Если номер раздела не указан, man всегда будет возвращать первую найденную страницу, обычно из раздела 1. Ниже приведен пример прямого указания номера раздела: