Man-страницы

В дистрибутивах GNU/Linux устанавливаются многочисленные консольные утилиты, которые работают в среде Bash. Помимо них, пользователи обычно дополняют системы своими программами. Запомнить все команды и их параметры вручную практически нереально, поэтому у каждой программы обязательно должна быть инструкция — man-страница. Название man происходит от термина manual, что переводится как "руководство" или "инструкция".

Просмотр таких страниц осуществляется через утилиту man, принимающую в качестве аргумента имя команды, по которой требуется информация. Например, man date или man cat.

Man-страница команды sleep

На скриншоте представлена man-страница для утилиты sleep, входящей в GNU/Linux. Она открывается командой man sleep и признана одной из самых кратких. В man-странице содержатся стандартные разделы:

  1. NAME. Определяет название команды и кратко описывает ее назначение.
  2. SYNOPSIS. Перечень доступных способов вызова команды, где обязательные параметры указаны без скобок, а необязательные — в квадратных скобках.
  3. DESCRIPTION. Подробное описание программы и всех ее операций.
  4. AUTHOR. Указывает автора программы.
  5. REPORTING BUGS. Контактная информация для отправки отчета об ошибках.
  6. COPYRIGHT. Информация об авторских правах на программу и лицензии, по которой она распространяется.
  7. SEE ALSO. Дополнительная и вспомогательная информация.

Эти разделы являются общими для всех man-страниц без исключения.

Стоит отметить, что в самой первой строке man-страницы указывается название программы и номер в скобках. Например, SLEEP(1). Число обозначает раздел документации Linux, к которому относится страница. Программы для пользователей находятся в разделе 1.

Документация для команд наподобие apt-get, предназначенных для установки ПО в различных Linux-дистрибутивах, помечена цифрой 8. Это связано с тем, что восьмой раздел посвящен системному администрированию и предполагает выполнение с правами суперпользователя (root).

Man-страница команды apt-get

Большинство man-страниц весьма обширны и их чтение требует использования горячих клавиш для навигации по тексту:

  • Стрелки вверх и вниз позволяют прокручивать текст построчно.

  • Клавиши Page Up и Page Down используются для постраничной прокрутки.

  • Home и End мгновенно перемещают к началу или концу страницы соответственно.

  • Нажатие q закрывает документ.

Кроме этих, существуют и другие клавиши управления.

На некоторых дистрибутивах возможно найти переводы страниц на русский язык, однако большинство документации в IT-сфере написано на английском.

Документация Info

Info-руководство предоставляет альтернативный вариант документации команд Linux. В отличие от man-страниц, информация в info менее формализована и может быть проще для понимания.

Команда info имя_программы открывает описание указанной программы в info-документации.

Info-страница команды yes

На изображении показана info-страница для утилиты yes.

Info-руководство — это, по сути, большая гипертекстовая коллекция, позволяющая перемещаться между связанными разделами. Для этого курсор нужно установить на подчеркнутую фразу, начинающуюся с *, и нажать Enter.

Клавиша u позволяет вернуться на самый верхний уровень info-документации Linux, а клавиши n и p перемещают от статьи к статье вверх и вниз соответственно. На изображении ниже отображено начало вершины иерархии страниц info.

Корень руководства Info

Опция --help

Почти все команды поддерживают опцию --help, которая выводит на экран краткую справку. Предоставленная информация остается видимой при последующих командах в терминале и нередко бывает переведена на русский язык.

Помощь по ключу --help

Команда apropos

Бывает, требуется выполнить задачу, но неизвестно, есть ли подходящая программа для этого или как она называется. В подобной ситуации поможет утилита apropos, выводящая краткие описания команд с указанной строкой в качестве аргумента.

Например, если понадобится проверить повторяющиеся строки в файле, можно использовать английское слово "repeat". Команда для поиска программы будет apropos repeat.

Пример использования команды apropos

Результатом будут четыре программы, среди которых выделяется uniq. Изучив ее справку, узнаем, что ключ -d позволяет выводить только повторяющиеся строки.

Утилита uniq

Примечание. Утилита man с ключом -k выполняет функции, аналогичные apropos.

Поиск с помощью man -k

Вопросы для самопроверки:

  1. Какую функцию выполняют man-страницы в дистрибутивах GNU/Linux?
  2. Как открыть man-страницу для команды?
  3. Какие клавиши используются для навигации по man-страницам?
  4. Какой альтернативный вариант документации команд Linux существует, кроме man-страниц?
  5. Какую опцию поддерживают почти все команды для вывода краткой справки?

Программа курса:

  1. Описание курса
  2. История операционной системы Linux
  3. Основы лицензии GNU GPL и её преимущества
  4. Функции и структура ядра Linux-систем
  5. Структура и каталоги файловой системы Linux
  6. Основные типы файлов в системе Linux
  7. Интерфейс командной строки в Linux
  8. Командная оболочка Bash в Linux
  9. Использование параметров команд в Bash
  10. Использование Ctrl+C, Ctrl+D и Ctrl+Z
  11. Автодополнение и история команд в Bash
  12. Перенаправление ввода и вывода в Bash
  13. Документация Linux и Man-страницы
  14. Абсолютная и относительная адресация в Linux
  15. Команда ls - как просматривать каталоги в Linux
  16. Копирование, перемещение и удаление в Linux
  17. Жесткие и символьные ссылки в Linux
  18. Создание жестких и символических ссылок в Linux
  19. Права доступа к файлам и каталогам в Linux
  20. Изменение прав доступа к файлам с помощью chmod
  21. Использование шаблонов имен файлов в Linux
  22. Поиск файлов в Linux с помощью команды find
  23. Использование команды sudo в Linux
  24. Управление пакетами с помощью APT в Linux