man page (Русский)
man-страницы (от англ. manual — руководство) — справочные страницы, которые предоставляются почти всеми *nix-дистрибутивами, включая Arch Linux. Для их отображения служит команда man
.
man-страницы изначально подразумевались как самодостаточные документы. Они ограничены в возможностях ссылаться друг на друга, в отличие от поддерживающих гиперссылки info-файлов — попытки GNU создать замену традиционному формату man-страниц.
Установка
man-db реализует man в Arch Linux, а less является просмотрщиком по умолчанию. Также можно использовать mandoc.
man-pages предоставляет руководства Linux.
Русский перевод доступен в man-pages-ruAUR.
Можно использовать приложения для просмотра руководств:
-
GNOME Help — Просмотрщик справки для GNOME. Он позволяет смотреть man-страницы через
yelp man:<name>
или недокументированным сочетанием клавишCtrl+L
в существующем окне.
-
KHelpCenter — Приложения для документации KDE Applications. Man-страницы доступны в UNIX manual pages или при запуске
khelpcenter man:<name>
.
-
Konqueror — Файловый менеджер KDE и веб-браузер. Он может отображать man-страницы через
man:<name>
.
- xman — Обеспечивает просмотр man-страниц по категориям.
Доступ к man-страницам
Чтобы отобразить man-страницу, наберите
$ man имя_страницы
Страницы разделены на несколько разделов. Полный список разделов смотрите в man-pages(7).
На man-страницы принято ссылаться по имени, с указанием номера раздела в скобках. Часто существуют сразу несколько man-страниц с одинаковыми именами, но в разных категориях, например man(1) и man(7). В таком случае, команде man необходимо передать номер конкретного раздела перед именем man-страницы, например:
$ man 5 passwd
отобразит man-страницу по файлу /etc/passwd
вместо утилиты passwd
.
Или можно указать номер раздела после названия страницы, отделив его точкой:
$ man passwd.5
Поиск по страницам
Хотя команда man
позволяет отображать man-страницы, возникает сложность, когда вы не знаете точного названия желаемой страницы. К счастью, вы можете воспользоваться поиском с помощью одной из этих эквивалентных команд:
$ man -k выражение $ man --apropos выражение $ apropos выражение
выражение
по умолчанию интерпретируется как регулярное выражение.
Если вы хотите произвести более углубленный поиск по всему содержимому страниц, используйте опцию -K
:
$ man -K password
man-db.service
, которую периодически запускает man-db.timer
. Если вы получаете сообщение «ничего подходящего не найдено» для любого поискового запроса, попробуйте вручную обновить кэш, запустив команду mandb
как root.Вместо того, чтобы отображать man-страницу целиком, вы можете вывести лишь ее краткое описание, используя команду whatis
. Например,
$ whatis ls
ls (1p) - list directory contents ls (1) - list directory contents
Ширина страницы
Ширина man-страниц регулируется переменной окружения MANWIDTH
.
Если ширина терминала слишком маленькая, переносы строк могут сломаться, что затруднит чтение. Можно исправить это установкой значения MANWIDTH при запуске man. В bash это можно сделать примерно так:
~/.bashrc
man() { local width=$(tput cols) [ $width -gt $MANWIDTH ] && width=$MANWIDTH env MANWIDTH=$width \ man "$@" }
Просмотр локальных страниц
Кроме утилиты man, для чтения man-страниц вы также можете использовать веб-браузер, например lynx или Firefox. Просмотр страниц в браузере позволяет воспользоваться основным преимуществом info-страниц — гиперссылками.
Конвертирование страниц в HTML
mandoc
Установите пакет mandoc. Чтобы конвертировать страницу, для примера, free(1)
, наберите:
$ mandoc -Thtml -Ostyle=style.css /usr/share/man/man1/free.1.gz > free.html
Получившийся файл free.html
теперь можно открыть в любом веб-браузере.
man2html
Установите man2html из официальных репозиториев.
Сконвертируйте страницу командой:
$ man free | man2html -compress -cgiurl man$section/$title.$section$subsection.html > ~/man/free.html
Другая полезная функция man2html
— экспорт в обычный текстовый файл, который можно распечатать:
$ man free | man2html -bare > ~/free.txt
man -H
Реализация утилиты man от GNU, также позволяет открыть страницу в веб-браузере:
$ man -H free
Команда запустит браузер, установленный в переменной окружения BROWSER
. Вы можете указать браузер явно, передав путь до исполняемого файла сразу после опции -H
.
roffit
Установите пакет roffitAUR.
Для конвертирования страницы выполните:
$ gunzip -c /usr/share/man/man1/free.1.gz | roffit > free.html
Конвертирование в PDF
Man-страницы всегда были удобны для печати: они написаны в формате troff, который является типографским языком. Таким образом вы можете легко сконвертировать man-страницы в любой из форматов, который поддерживается в groff, который используется в man-db. Чтобы узнать список доступных устройств вывода, смотрите опцию -T
в groff(1) (или mandoc(1) если вы используете пакет mandoc).
Эта команда создаст PDF-файл:
$ man -Tpdf имястраницы > имяфайла
Обратите внимание, что шрифты главным образом ограничены набором Times и имеют жестко заданные размеры. Документ не будет содержать гиперссылок. Некоторые man-страницы форматировались так, чтобы выглядеть хорошо в терминале, однако могут отображаться некорректно в форме PostScript или PDF-документов.
Просмотр онлайн-страниц
Существуют множество онлайн-хранилищ man-страниц; вот небольшой список:
-
Arch manual pages содержит man-страницы пакетов Arch Linux. Используется для ссылок на man-страницы в этой вики. Также можно использовать
!archman
DuckDuckGo bang для прямого поиска по man-страницам Arch. - Man7.org. Первоисточник страниц для man-pages.
- manned.org — коллекция из разных дистрибутивов Linux, BSD и т.д. Множество версий пакетов.
- man-страницы на die.net
- man.cx
- man-страницы Debian GNU/Linux
- репозиторий man-страниц Ubuntu
- man-страницы DragonFlyBSD
- man-страницы FreeBSD Hypertext
- man-страницы NetBSD
- man-страницы OpenBSD
- Руководство Plan 9 — Том 1
- Руководство Inferno — Том 1
- man-страницы форума The UNIX and Linux Forums
Также есть сравнительная таблица.
Полезные страницы
Здесь приведен небольшой список полезных man-страниц, которые могут помочь вам получить более углубленные знания о множестве полезных вещей. Некоторые из них могут служить хорошими справочниками (например, таблица ASCII).
- ascii(7)
- boot(7)
- charsets(7)
- chmod(1)
- credentials(7)
- fstab(5)
- hier(7)
- systemd(1)
- locale(1p), locale(5), locale(7)
- printf(3)
- proc(5)
- regex(7)
- signal(7)
- term(5), term(7)
- termcap(5)
- terminfo(5)
- utf-8(7)
Вам могут быть интересны также и другие страницы седьмой категории:
$ man -s 7 -k ".*"
А также страницы, относящиеся непосредственно к Arch Linux:
- alpm-hooks(5)
- libalpm(3)
- makepkg(8)
- makepkg.conf(5)
- makepkg-template(1)
- mkinitcpio(8)
- pacman(8)
- pacman.conf(5)
- pacman-conf(8)
- pacman-key(8)