Wie erstelle ich eine Liste aller verfügbaren Manpages auf einem System?
Wie erstelle ich eine Liste aller verfügbaren Manpages auf einem System?
Antworten:
Verwenden:
apropos .
oder:
man -k .
Wo .
ist ein regulärer Ausdruck, der "ein beliebiges Zeichen" bedeutet?
apropos
).
$ man -k . -s <section-NR>
Um zum Beispiel alle Seiten von Abschnitt 2 anzuzeigen:
$ man -k . -s 2
man 2 -k '.'
dass es auch funktionieren würde. Aber es ist nicht so
Hier ist mein Favorit:
whatis -r .
... und wenn Sie nur alle Manpages in einem bestimmten Abschnitt sehen möchten, verwenden Sie das -s
Flag.
Wenn Sie beispielsweise nur eine Liste aller Manpages für alle ausführbaren Befehle erhalten möchten (Abschnitt 1):
whatis -s 1 -r .
# Shell script to list pathname of all available man pages
mandirs="\`man -w | sed 's/:/ /g'\`"
find $mandirs -type f
Dies erzeugt eine Liste aller man-Dateien, wobei die Liste der man-Verzeichnisse verwendet wird, die von "man -w" erzeugt wird. Allerdings ist die Regex-Lösung für beliebige Zeichen von cYrus viel besser, um eine saubere Liste nur der Seite zu erhalten Namen:
apropos . | awk '{print $1}'
oder
man -k . | awk '{print $1}'
sort -u
.
man -k . | awk '{print $1,$2}'
, um den Abschnitt zu behalten
Suchen Sie in den Pfaden, die in aufgeführt sind /etc/man.config
, und geben Sie die zusätzlichen Verzeichnisse an, die von der Direktive FHS
oder hinzugefügt wurden FSSTND
.
/etc/manpath.config
und $MANPATH
ist null.
Unter macOS können Sie verwenden
man -k .
oder
apropos .
oder
whatis .
Unter macOS unterstützen die Befehle man -k
, apropos
und whatis
das Filtern nach Abschnitten jedoch nicht.
Dazu können Sie die folgende Pipeline verwenden
man -k . | grep \(1\) | less
Sie können durch 1
den manuellen Abschnitt Ihrer Wahl ersetzen .
apropos -s 1 .
Zum Beispiel, um es auf Abschnitt 1 (Benutzerbefehle) zu beschränken.