Только что увидел кого-то, ссылающегося на man 7 regex
в Stackoverflow. Я попробовал man regex
и получил очень похожие результаты - похоже, есть небольшие различия.
Так что же это за магическое число 7? Поиск man 7 unix
в Google дает мне более загадочные результаты, такие как UNIX (7) ...
UNIX (7)
Чтобы ответить на ваш вопрос о «UNIX (7)», это стандартное соглашение: «Страница руководства для UNIX в разделе 7 (разное ) ".
Чтобы открыть страницу типа init (8)
, вы должны использовать эту команду: man 8 init
.
man regex
vs man 7 regex
Чтобы ответить на ваш вопрос о «тонких различиях» между man regex
и man 7 regex
:
man
по умолчанию открывает страницу с наименьший номер раздела . В данном случае это раздел 3 (вызовы библиотеки). Открытие страницы из раздела 7 (Разное) совсем другое.
Страницы в разных разделах адресуют разные вещи, хотя в этом случае они похожи, рассмотрите apt
:
apt (8) - Advanced Package Tool
apt (1) - annotation processing tool
В этом примере apt
из раздела 8 (Команды системного администрирования) полностью не имеет отношения к странице из раздела 1 (Исполняемые программы или команды оболочки).
Для дальнейшего использования используйте man -f PAGE_NAME
, чтобы найти все страницы с этим именем во всех разделах. Затем вы можете открыть страницу из нужного раздела с помощью man. РАЗДЕЛ PAGE_NAME
.
Ниже перечислены различные разделы страницы, которые можно найти в man man
:
- Исполняемые программы или команды оболочки
- Системные вызовы (функции, предоставляемые ядром)
- Вызовы библиотек (функции в программных библиотеках)
- Специальные файлы (обычно находятся в
/ dev
)- Форматы файлов и соглашения, например
/ etc / passwd
- Игры
- Разное (включая пакеты макросов и соглашения), например
man (7)
,groff (7)
- Команды системного администрирования (обычно только для root)
- Подпрограммы ядра [Нестандартные]
Номера разделов
man
будут отображать справочную страницу из любого раздела, man 7
покажет справочную страницу из раздела 7. Итак, здесь 7 относится к раздел конкретной команды, для которой вы ищете страницу руководства.
Раздел, если он предусмотрен, направляет человека на поиск только в этом разделе руководство.
Разделы
См. следующую таблицу, где указаны номера разделов руководства, за которыми следуют типы страниц, которые они содержат.
1: Исполняемые программы или команды оболочки
2: Системные вызовы (функции, предоставляемые ядром)
3: Вызовы библиотек (функции внутри программных библиотек)
4: Специальные файлы (обычно находится в / dev)
5: Форматы файлов и соглашения, например / etc / passwd
6: Игры
7: Разное (включая пакеты макросов и соглашения), например man (7), groff (7)
8: Команды системного администрирования (обычно только для root). Обзоры различных тем, соглашений и протоколов, стандарты набора символов и разное другое.
9: Подпрограммы ядра [Нестандартные]
Команды в нескольких секциях
В большинстве случаев вам может понадобиться использовать man
команда без дополнительных n . Однако в некоторых случаях команда появляется более чем в одном разделе. Например, если вы введете команду man open
, вы получите справочную страницу для openvt из раздела 1. Но если вам нужно увидеть справочную страницу для open как C (или системный вызов, как указано выше table) необходимо выполнить команду man 2 open
.
Очень похожий пример будет man printf
и man 3 printf
. Пожалуйста, введите команды и убедитесь сами, в чем разница в выводе.
Ваша проблема man 7 unix
(UNIX (7))
Итак, UNIX (7) означает, что он принадлежит разделу 7.
Какой раздел будет отображаться по умолчанию, если я не укажу номер раздела?
Действие по умолчанию - поиск во всех доступных разделы, следующие в заранее определенном порядке и показывающие только первую страницу найден, даже если страница существует в нескольких разделах.
Как мне узнать номер раздела команды?
Нужно ли вам выяснить, в какие разделы входит термин / команда, с помощью man -k
(эквивалент команды apropos). Итак, man -k printf
будет искать в кратких описаниях и названиях страниц руководства ключевое слово printf как регулярное выражение. Распечатайте все совпадения. (Эквивалентно apropos -r printf
). Выполните команду, посмотрите, сколько вы получите. Если необходимо избежать совпадений подстрок (например, будет отображаться sprintf, если вы запустите man -k printf
), поэтому вам нужно использовать ^ term
, чтобы ограничить его, как показано ниже,
man -k '^printf'
Printf (3o) - Formatted output functions.
printf (1) - format and print data
printf (3) - formatted output conversion
Связанная команда
Связанная команда apropos
, как указано выше, выполняет поиск по именам и описаниям справочных страниц. Если вы не уверены, какую страницу руководства ищете, но имеете общее представление, используйте эту команду.