Что делает числа в средней странице справочника?

Как это часто бывает с неясными условиями, Файл Жаргона имеет ответ:

[Unix: из runcom файлов в системе CTSS 1962-63, с помощью сценария запуска/etc/rc] файл Сценария, содержащий инструкции по запуску для прикладной программы (или вся операционная система), обычно текстовый файл, содержащий команды вида, который, возможно, был вызван вручную, после того как, система работала, но должна быть выполнена автоматически каждый раз, когда система запускает.

Таким образом казалось бы, что "емкостно-резистивная" часть обозначает "runcom", которому я верю, может быть расширен до "команд выполнения". На самом деле это точно, что содержит файл, управляет, чтобы удар работал.

496
29.10.2010, 00:25
8 ответов

Число соответствует тому, какой раздел руководства, от которого страница; 1 пользовательские команды, в то время как 8 материал системного администратора. Страница справочника для человека сама (man man) объясняет это и перечисляет стандартные:

MANUAL SECTIONS
    The standard sections of the manual include:

    1      User Commands
    2      System Calls
    3      C Library Functions
    4      Devices and Special Files
    5      File Formats and Conventions
    6      Games et. al.
    7      Miscellanea
    8      System Administration tools and Daemons

    Distributions customize the manual section to their specifics,
    which often include additional sections.

Существуют определенные условия, которые имеют различные страницы в различных разделах (например. printf поскольку команда появляется в разделе 1, как a stdlib функция появляется в разделе 3); в случаях как этот можно передать число раздела man перед названием страницы для выбора, какой Вы хотите, или использование man -a показать каждую страницу соответствия подряд:

$ man 1 printf
$ man 3 printf
$ man -a printf

Можно сказать то, что разделяет термин, присоединяется man -k (эквивалентный apropos команда). Это сделает соответствия подстроки также (например, это покажет sprintf если Вы работаете man -k printf), таким образом, необходимо использовать ^term ограничить его:

$ man -k '^printf'
printf               (1)  - format and print data
printf               (1p)  - write formatted output
printf               (3)  - formatted output conversion
printf               (3p)  - print formatted output
printf [builtins]    (1)  - bash built-in commands, see bash(1)
518
27.01.2020, 19:27
  • 1
    Это, конечно, объясняет это. Существует ли простой способ сказать, существует ли несколько страниц справочника для данной команды? –  Wilduck 29.10.2010, 00:46
  • 2
    @Wil, Да, отредактированный –  Michael Mrozek♦ 29.10.2010, 00:52
  • 3
    Обратите внимание, что эти числа раздела для Linux. 1, 3 и 6 то же через все варианты Unix AFAIK, но другие и разделы non-lone-digit могут отличаться. Обычно man X intro описывает то, что находится в разделе X. –  Gilles 'SO- stop being evil' 29.10.2010, 01:31
  • 4
    @KeithB: я использовал некоторые нельды с различными 4,5,7,8. Цифровой Unix (OSF1) имел, и Солярис все еще имеет: форматы файлов в 4, misc в 5, устройства в 7. Солярис также помещает команды администратора в 1 м. Я думаю, что системные вызовы в 2 универсальны, но некоторые системы также имеют некоторые интерфейсы библиотеки C в 2 (когда они, как предполагается, являются тонкими обертками вокруг одноименного syscall). $ –  Gilles 'SO- stop being evil' 29.10.2010, 23:20
  • 5
    Ха, who'da думал, что Вам будет нужно руководство для использования руководства... Никогда не выполняйте меня никогда man man... до сих пор. –  Matt Clark 04.12.2015, 17:44

История этих чисел раздела возвращается к Руководству исходного Unix-программиста Thompson и Ritchie в 1971.

Исходные разделы были

  1. Команды
  2. Системные вызовы
  3. Подпрограммы
  4. Специальные файлы
  5. Форматы файлов
  6. Сохраняемые пользователями программы
  7. Разное
59
27.01.2020, 19:27
  • 1
    Больше материала от 70ies, действительно. Я думал, что это было от 80ies. –  Rolf 10.02.2018, 20:51

Что это - средства, уже описанные, но я также хочу добавить, что каждый раздел имеет специальную страницу руководства с введением: intro. Например, посмотрите man 1 intro или man 3 intro и так далее.

21
27.01.2020, 19:27
  • 1
    , я не вижу это на своей установке Fedora. Является человек X введениями, не стандартными? –  beatgammit 01.07.2011, 07:39
  • 2
    @tjameson Делает Вы имеете man-pages пакет установлен? –  php-coder 01.07.2011, 07:43

От man страница справочника:

The table below shows the section numbers of the manual followed by the 
types of pages they contain.

   1   Executable programs or shell commands
   2   System calls (functions provided by the kernel)
   3   Library calls (functions within program libraries)
   4   Special files (usually found in /dev)
   5   File formats and conventions eg /etc/passwd
   6   Games
   7   Miscellaneous  (including  macro  packages and conven‐
       tions), e.g. man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]

Относительно того, почему они являются отдельными как этот - существует некоторое перекрытие. Определенные страницы справочника существуют больше чем в одном разделе в зависимости от того, что Вы имеете в виду.

Например, выдержать сравнение man crontab с man 5 crontab - возможности являются последним, тот, который Вы означали искать.

16
27.01.2020, 19:27
  • 1
    И что man1p и man3p? –  Tyilo 04.08.2011, 23:15
  • 2
    И где я должен поместить свои собственные страницы справочника, расположенные в ~/man? –  Tyilo 04.08.2011, 23:20
  • 3
    1 пункт является posix стандартной версией руководства. Если Вы хотите написать портативный код, необходимо использовать только страницы справочника Xp. Если Вы, реализация не является posix совместимыми страницами справочника X и Xp, могли бы отличаться. –  andcoz 05.08.2011, 01:42
  • 4
    @Tyilo видит мой –  Babken Vardanyan 23.06.2014, 09:36

Это числа раздела. Просто введите man man или откройте завоевателя и введите man://человек, и Вы будете видеть то, что является этими разделами.

8
27.01.2020, 19:27

konqueror также описывает нестандартные разделы: (спасибо @greg0ire за идею)

0     Header files
0p    Header files (POSIX)
1     Executable programs or shell commands
1p    Executable programs or shell commands (POSIX)
2     System calls (functions provided by the kernel)
3     Library calls (functions within program libraries)
3n    Network Functions
3p    Perl Modules
4     Special files (usually found in /dev)
5     File formats and conventions eg /etc/passwd
6     Games
7     Miscellaneous  (including  macro  packages and conventions), e.g. man(7), groff(7)
8     System administration commands (usually only for root)
9     Kernel routines
l     Local documentation
n     New manpages
31
27.01.2020, 19:27

Определения для SVr4 следующие:

1 User Commands
2 System Calls
3 library Functions
4 File Formats
5 Standards, Environment and Macros (e.g. man(5))
6 Games and Demos
7 Device and Network Interfaces, Special Files
8 Maintenance Procedures
9 Kernel and Driver entry points and structures

Это фактическая нумерация для "генетического" UNIX. POSIX не определяет чисел.

4
27.01.2020, 19:27

Часто ссылка на страницу руководства осуществляется с помощью суффикса раздела, заключенного в круглые скобки, например:

read(2)

Этот стиль имеет два основных преимущества:

  • сразу видно, что вы ссылаетесь на страницу руководства, то есть вы можете написать что-то вроде 'ср. читать (3) 'вместо' ср. справочная страница раздела 3 из read '
  • , если несколько разделов содержат справочные страницы с одинаковыми именами, указание раздела является более точным

Справочные страницы организованы по разделам, например Раздел 1 включает все справочные страницы пользовательских команд, Раздел 2 - все справочные страницы для системных вызовов, Раздел 3 предназначен для библиотечных функций и т. Д.

Если вы явно не укажете раздел в командной строке, вы получите первый соответствующий man страницы в порядке обхода раздела по умолчанию, например:

$ man read

отображает BASH_BUILTINS (1) в Fedora. Где

$ man 2 read

отображает страницу руководства для системного вызова read () .

Обратите внимание, что позиционная спецификация раздела не переносима - например, в Solaris вы должны указать это так:

$ man -s 2 read

Обычно man man также перечисляет некоторые из доступных разделов. Но не обязательно все. Для перечисления всех доступных разделов можно указать подкаталоги всех каталогов, перечисленных в пути man по умолчанию или в переменной среды $ MANPATH . Например, в системе Fedora 23 с некоторыми установленными пакетами разработки / usr / share / man имеет следующие подкаталоги:

cs  es  id  man0p  man2   man3x  man5x  man7x  man9x  pt_BR  sk  zh_CN
da  fr  it  man1   man2x  man4   man6   man8   mann   pt_PT  sv  zh_TW
de  hr  ja  man1p  man3   man4x  man6x  man8x  pl     ro     tr
en  hu  ko  man1x  man3p  man5   man7   man9   pt     ru     zh

Каталоги с префиксом man представляют каждый раздел, а другой одни содержат переведенные разделы.Таким образом, чтобы получить список непустых разделов, можно выполнить такую ​​команду:

$ find /usr/share/man -type f  | sed 's@^.*/man\(..*\)/.*$@\1@' \
    | sort -u | column
0p  1p  3   4   6   8
1   2   3p  5   7

(разделы, оканчивающиеся на p , являются страницами руководства POSIX)

Для просмотра страницы руководства на другом языке (если доступно) можно установить переменную среды, связанную с языком, например:

$ LC_MESSAGES=de_DE man read

Кроме того, каждый раздел должен иметь вводную страницу руководства с именем intro , например можно просмотреть через:

$ man 2 intro
9
20.08.2021, 13:39

Теги

Похожие вопросы