Cosa significano le parentesi e il numero dopo un comando Unix o una funzione C?


Risposte:


221

Sezioni Manpage.

  1. Comando UNIX comune che può essere utilizzato da tutti gli utenti. per esempiols(1)
  2. Chiamate di sistema Unix e C es mmap(2)
  3. Routine di libreria C per programmi C ad es system(3)
  4. File speciali ad es sudoers(4)
  5. Formati di file di sistema ad es lmhosts(5)
  6. Giochi ad es fortune(6)
  7. Varie es regex(7)
  8. Comandi di amministrazione del sistema eseguiti solo da root, ad es iwconfig(8)
  9. (? Specifico per Linux) ad esksoftirqd(9)

Il motivo dietro le sezioni è che ci sono cose che condividono pagine di manuali - mkdir(1)è il comando usato per creare una directory mentre mkdir(2)è una chiamata di sistema che può essere usata per creare una directory in un programma C. Quindi le diverse sezioni.

Riferimenti annotati [1,2] (come suggerito):
http://www.gsp.com/support/man/ - Le manpage di FreeBSD disposte secondo le sezioni
http://manpages.unixforum.co.uk/man-pages/ linux / suse-linux-10.1 / - Manpage SUSE disposte secondo le sezioni
http://www.december.com/unix/ref/mansec.html - Ancora un'altra tabella per le sezioni manpage. Base iniziale dell'elenco (vedere le modifiche precedenti di questo post per i dettagli)

[1] spiegazioni ed esempi sono fabbricazioni spontanee nella mia testa, per la questione.
[2] non che sia accademicamente valido, ma la richiesta di riferimento è una delle cose che ha rallentato la crescita di Wikipedia. gli scettici stanno cercando di ottenere altri di riferimento di tutto e alcuni dei collaboratori solo ottenere modo troppo infastiditi per rispondere ulteriormente tutto ciò, non che quelli che cercano di aggiungere cose inutili / infondate siano adeguatamente rimossi dalla piscina (che appena arrivato il tag di riferimento richiesta codificata sulle loro aggiunte, contenuti non rimossi ...)


5
Games (6) ha una sezione a parte!
Jaywalker,

5
in realtà, è più un programma divertente che un gioco. caesar (6) e fortuna (6) sono al massimo divertente .... e se si pensa BCD (6) è un gioco ... va bene, mi piacerebbe collocare il guru distintivo unix su di voi
Bubu

25
Per visualizzare le informazioni, utilizzare il comando: man <number> <command>esempio: man 1 mkdireman 2 mkdir
Donny Kurnia,

@DonnyKurnia il singolo fatto più importante che uno deve sapere - da qui in poi puoi capire tu stesso il resto
n611x007

OTOH, gli scettici reso la risposta più importante che la "competizione" stackoverflow.com/a/62972/4145951 , quindi sono upvoting esso. ;)
Nemo il

83

Un estratto da man 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]

3
"Unix è facile: digitare man mane il resto viene da solo"
gerrit,

1
Questo non è applicabile su macOS .
Franklin Yu,

36

Il numero si riferisce alla sezione della pagina man in cui si trova il comando o la funzione C.

Quindi puoi accedere alla pagina man di mount(8)facendo il comando:

man 8 mount

O ftok(2)come tale:

man 2 ftok

2
Per curiosità, perché non è vero man mount(8)o man ftok(2)?
JAB

7
@JAB: Perché la maggior parte delle shell prenderà le parentesi in modo speciale. Non puoi usare le parentesi in nessun comando shell (senza voler fare qualcosa di speciale).
Wuffers,

Bene, questo è interessante.
JAB

+1 Questa è la cosa più essenziale che devi sapere: puoi effettivamente capire il resto da solo (anche senza rendertene conto man man).
n611x007,


3

Questi sono numeri di sezione. Se vuoi leggere la sezione 2 di mount, esegui:

man 2 mount

Alcune pagine man hanno più sezioni.


3

Questi sono i mannumeri di sezione.

Sezioni ed esempi per le pagine man di linux:

  • 1 - Programmi o comandi shell - cp, rm, dd e ps.
  • 2 - Chiamate di sistema - fork, exec, ioctl e poll.
  • 3 - Chiamate in libreria - chiamate printf, malloc, pthread_ *, cos, sin, tan, ecc.
  • 4 - dispositivi es. Null (/ dev / null), port, random, lp.
  • 5 - Formati di file: utenti, gruppi, host, host.equiv.
  • 6 - giochi.
  • 7 - Varie (spesso panoramiche) - glob, intro, tcp, uri, url, locale.
  • 8 - Comandi e demoni dell'amministratore di sistema: arp, mount, route, useradd, userdel ecc.

Nota che ci sono differenze tra l'elenco delle sezioni man per linux e quello per le varianti Unix System V (es. Solaris, BSD, SCO, Venix). Maggiori dettagli dalla pagina man wiki .

È interessante notare che Ken Thompson e Denis Ritchie, i famosi creatori di Unix e C, hanno scritto le prime pagine man - su insistenza del loro manager. Suona familiare?

Per selezionare un numero di sezione specifico per una voce man su linux ( printfha voci nelle sezioni 1 e 3).

man 3 printf

Per visualizzare tutte le voci man percfdisk (usare qat ENDdi una pagina per arrivare alla pagina successiva:

man -a cfdisk

Per elencare tutte le voci per un determinato comando utilizzareapropos

apropos cfdisk

2

È il numero della sezione manuale. Nel lontano passato, questo si riferiva al raccoglitore fisico che conteneva quella particolare pagina di manuale.

Dalla manmanpage di un moderno sistema Linux:

   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  conventions), e.g.
       man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]

0

Manpage sezioni comprese quelle non standard su Arch Linux:

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

(grazie a @ greg0ire per l'idea di usare konqueror)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.