it-swarm.com.de

Was bedeuten die Klammern und die Nummer nach einem Unix-Befehl oder einer C-Funktion?

Ich sehe immer wieder Klammern und eine Zahl nach einem Befehl in der Unix-, Linux- oder C-Funktion.

Zum Beispiel: man (8), ftok (2), mount (8) usw.

Was bedeuten diese? Ich sehe sie auch beim Menschen.

218
Malfist

Manpage-Abschnitte.

  1. Gemeinsamer UNIX-Befehl, der von allen Benutzern verwendet werden kann. z.B. ls(1)
  2. Unix- und C-Systemaufrufe, z. mmap(2)
  3. C-Bibliotheksroutinen für C-Programme, z.B. system(3)
  4. Spezielle Dateien, z.B. sudoers(4)
  5. Systemdateiformate, z.B. lmhosts(5)
  6. Spiele, z.B. fortune(6)
  7. Verschiedenes, z.B. regex(7)
  8. Systemverwaltungsbefehle, die nur von root ausgeführt werden, z. iwconfig(8)
  9. (? Linux-spezifisch) z. B. .ksoftirqd(9)

Der Grund für Abschnitte ist, dass es Dinge gibt, die Manualpages gemeinsam nutzen - mkdir(1) ist der Befehl zum Erstellen eines Verzeichnisses, während mkdir(2) ein Systemaufruf ist, mit dem ein Verzeichnis in einem C-Programm erstellt werden kann. Also die verschiedenen Abschnitte.

Kommentierte Referenzen [1,2] (wie vorgeschlagen):
http://www.gsp.com/support/man/ - Die FreeBSD-Hilfeseiten sind nach Abschnitten geordnet
http://manpages.unixforum.co.uk/man-pages/linux/suse-linux-10.1/ - SUSE-Hilfeseiten geordnet nach Abschnitten
http://www.december.com/unix/ref/mansec.html - Noch eine Tabelle für Manpage-Abschnitte. Ursprüngliche Grundlage der Liste (Details finden Sie in den älteren Änderungen dieses Beitrags)

[1] Erklärungen und Beispiele sind für mich spontane Erfindungen.
[2] nicht, dass es wissenschaftlich fundiert ist, aber die Bitte um Referenz ist eines der Dinge, die das Wachstum von Wikipedia verlangsamen. Skeptiker versuchen, andere dazu zu bringen, auf alles Bezug zu nehmen, und einige der Mitwirkenden sind einfachwayzu genervt, um weitere Antworten zu geben, nicht dass diejenigen, die versuchen, nutzloses/grundloses Zeug hinzuzufügen, richtig sind aus dem Pool entfernt (sie erhalten nur das Referenzanforderungs-Tag, das auf ihren Ergänzungen markiert ist, Inhalte, die nicht entfernt wurden ...)

218
bubu

Ein Auszug aus 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]
83
ssapkota

Die Nummer bezieht sich auf den Manpage-Abschnitt, in dem sich der Befehl oder die C-Funktion befindet.

Sie können also auf die Manpage von mount(8) zugreifen, indem Sie den folgenden Befehl ausführen:

man 8 mount

Oder von ftok(2) wie folgt:

man 2 ftok
36
Wuffers

Dies sind Abschnittsnummern der traditionellen Unix-Handbuchseiten. Ihre Frage wurde bereits beantwortet auf Unix und Linux Stack Exchange vor einem Jahr, Was bedeuten die Zahlen in einer Manpage?.

12
JdeBP

Dies sind die man Abschnittsnummern.

Abschnitte und Beispiele für Linux-Manpages:

  • 1 - Programme oder Shell-Befehle - cp, rm, dd und ps.
  • 2 - Systemaufrufe - fork, exec, ioctl und poll.
  • 3 - Bibliotheksaufrufe - printf, malloc, pthread_ * -Aufrufe, cos, sin, tan usw.
  • 4 - Geräte, z. null (/ dev/null), port, random, lp.
  • 5 - Dateiformate - Benutzer, Gruppen, Hosts, Host.equiv.
  • 6 - Spiele.
  • 7 - Verschiedenes (häufig Übersichten) - Glob, Intro, TCP, URI, URL, Gebietsschema.
  • 8 - Sys Admin Befehle und Daemons - arp, mount, route, useradd, userdel etc.

Hinweis : Es gibt Unterschiede zwischen der man-Abschnittsliste für Linux und der für Unix System V-Varianten (z. B. Solaris, BSD, SCO, Venix). Weitere Details finden Sie in Manpage Wiki .

Interessanterweise haben Ken Thompson und Denis Ritchie, die berühmten Unix- und C-Entwickler, die ersten Manpages geschrieben - auf Drängen ihres Managers. Kommt Ihnen das bekannt vor?

Auswählen einer bestimmten Abschnittsnummer für einen man-Eintrag unter Linux (printf enthält Einträge in den Abschnitten 1 und 3).

man 3 printf

Um alle man-Einträge für cfdisk anzuzeigen (verwenden Sie q bei END einer Seite, um zur nächsten Seite zu gelangen:

man -a cfdisk

Um alle Einträge für einen bestimmten Befehl aufzulisten , verwenden Sie apropos

apropos cfdisk
3
suspectus

Dies sind Abschnittsnummern. Wenn Sie Abschnitt 2 von mount lesen möchten, führen Sie Folgendes aus:

man 2 mount

Einige Manpages haben mehrere Abschnitte.

3
jftuga

Es ist die manuelle Abschnittsnummer. Vor langer Zeit bezog sich dies auf den physischen Ordner, der diese bestimmte Handbuchseite enthielt.

Aus der Manpage man auf einem modernen Linux-System:

   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]
2
Flup

Hilfeseitenabschnitte, einschließlich nicht standardmäßiger Abschnitte unter 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

(Danke an @ greg0ire für die Idee, konqueror zu benutzen)

0