Я использую debian8 (Джесси), и я пошел, чтобы найти читать справочную страницу для open. вместо этого я получил предупреждение:
$ man 3 open
No manual entry for open in section 3
See 'man 7 undocumented' for help when manual pages are not available.
У меня установлен пакет manpage-dev, так где же находится справочная страница программистов (man 3) для открытия?
man
documentation
j0h
источник
источник
apropos
, илиman --names-only
с одним из--regex
или--wildcard
. Смman man
.open
это не функция, это системный вызов. Это педантичное различие, но здесьОтветы:
Вы хотите
man 2 open
для интерфейса библиотеки C, а неman 3 open
. Это действительно вmanpages-dev
(неmanpage-dev
).man 3 open
дает страницу руководства по Perl.источник
Разделы руководства описаны на самих страницах руководства. Войдите
man man
в сеанс оболочки, чтобы увидеть различные разделы и общий контент:Раздел 2 описывает системные вызовы, где раздел 3 охватывает процедуры библиотеки. Библиотечные процедуры, которые являются просто оболочками для системных вызовов, также описаны в разделе 2.
источник
Просто чтобы прояснить причину этого, man-страница находится в разделе 2, потому что это системный вызов (реализованный более или менее непосредственно как часть ядра, а не библиотеки C).
Это различие может показаться несколько произвольным, особенно с более старыми системными вызовами, которые теперь являются библиотечными функциями (fork все еще находится в разделе 2, даже если это оболочка для клона), если вы уже не знаете этого. В общем, сначала посмотрите раздел 3, затем попробуйте раздел 2, если вы не можете его найти или, похоже, он не имеет отношения к делу. Кроме того, некоторые функции в разделе 2 являются внутренними или устаревшими специфичными для Linux функциями, которые не должны вызываться обычными программами (например, getdents, gettid).
Вы также можете установить пакет manpages-posix-dev, чтобы получить набор manpages, который написан с переносной точки зрения, а не содержит информацию, специфичную для linux. В этом пакете все справочные страницы, предоставляемые для функций C, находятся в разделе 3p.
источник
Когда я не уверен, в каком разделе находится определенная страница man, я использую опцию -a.
Из примера в man-странице для человека:
источник
В этой ситуации полезно просмотреть весь список всех доступных страниц с этим именем man-страницы, используя одну из команд:
Результат будет таким же:
Или просмотрите содержимое всех существующих man-страниц и, таким образом, определите необходимые:
источник