Manpages: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Robert (Diskussion | Beiträge)
pacman -Sy angepasst, siehe https://bbs.archlinux.de/viewtopic.php?id=17347
Henrikx (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
 
(12 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
''Manpage'' steht für „manual page“, also „Handbuchseite“ und ist unter UNIX und praktisch allen verwandten Systemen ein gängiges, standardisiertes System, um Hilfetexte zu Programmen bereitzustellen. In Manpages werden Informationen zu Programmen gegeben, und Optionen ausführlicher erläutert, als wenn man den Hilfe-Parameter eines Programmes verwendet.
''Manpage'' steht für „manual page“, also „Handbuchseite“, und ist unter UNIX und praktisch allen verwandten Systemen ein gängiges, standardisiertes Werkzeug, um Hilfetexte zu Programmen bereitzustellen. In Manpages werden Informationen und Optionen zu Programmen ausführlicher erläutert als im Hilfe-Parameter (--help) eines Programmes.


Zur Ausgabe der Manpages wird das Systemprogramm „less“ verwendet, es können aber auch andere Ausgabeprozessoren verwendet werden (siehe Abschnitt [[#Farbige Ausgabe|Farbige Ausgabe]]).
Zur Ausgabe der Manpages wird das Systemprogramm {{ic|less}} verwendet, es können aber auch andere Ausgabeprozessoren verwendet werden (siehe Abschnitt [[#Farbige Ausgabe|Farbige Ausgabe]]).


== Das Programm „man“ ==
== Das Programm {{ic|man}} ==
[[Bild:Man_less.png|thumb|Standard-Ansicht der Manpage zu „man“ in der deutschen Übersetzung]]
[[Bild:Man_less.png|thumb|Standard-Ansicht der Manpage zu {{ic|man}} in der deutschen Übersetzung]]


Um Manpages zu lesen, wird das Programm „man“ verwendet. Standardmäßig zeigt „man“ die Manpage aus der ersten Sektion an. Es sind durch POSIX derzeit 12 Sektionen Standardisiert.
Um Manpages zu lesen, wird das Programm {{ic|man}} verwendet. Standardmäßig zeigt {{ic|man}} die Manpage aus der ersten Sektion an. Es sind durch POSIX derzeit 12 Sektionen standardisiert.


* Sektion 1: Nutzerbefehle
* Sektion 1: Nutzerbefehle
Zeile 21: Zeile 21:
* Sektion n: Neu
* Sektion n: Neu


Die Angabe der Sektionen ist allerdings nur von Bedeutung, wenn die Manpage in verscheidenen Sektionen unterschiedlich definiert ist. Standardmäßig wird immer die erste Sektion probiert. Dieses Verhalten ist anpassbar. Siehe [[#Konfiguration|Konfiguration]]
Die Angabe der Sektionen ist allerdings nur von Bedeutung, wenn die Manpage in verschiedenen Sektionen unterschiedlich definiert ist. Standardmäßig wird immer die erste Sektion probiert. Dieses Verhalten ist anpassbar. Siehe [[#Konfiguration|Konfiguration]]


Ruft man nun die Manpage zu „man“ auf, also „man man“ erhält man eben diese Manpage. Mit den Pfeiltasten kann man hier umherscrollen. Wenn man einen bestimmten Begriff suchen möchte, geht dies mit einem vorangestellten Slash.
Ruft man nun die Manpage zu {{ic|man}} auf, also {{ic|man man}} erhält man eben diese Manpage. Mit den Pfeiltasten kann man hier umherscrollen. Wenn man einen bestimmten Begriff suchen möchte, geht dies mit einem vorangestellten Slash.


  /begriff
  /begriff


Dies durchsucht die aktuell angezeigte Manpage ab der aktuellen Position nach der Zeichenfolge „begriff“. Die Suche ist schreibungsabhängig. „begriff“ wird also nur gefunden, wenn in der Manpage auch „begriff“ steht, steht dort nur „BEGRIFF“, wird er nicht gefunden.
Dies durchsucht die aktuell angezeigte Manpage ab der aktuellen Position nach der Zeichenfolge {{ic|begriff}}. Die Suche ist schreibungsabhängig. {{ic|begriff}} wird also nur gefunden, wenn in der Manpage auch {{ic|begriff}} steht, steht dort nur {{ic|BEGRIFF}}, wird er nicht gefunden.


Verlassen wird das Programm mittels „q“. Mittels „h“ erscheint eine Zusammenfassung weiterer verfügbarer Befehle, diese Liste kann man ebenfalls mittels „q“ verlassen.
Verlassen wird das Programm mittels {{ic|q}}. Mittels {{ic|h}} erscheint eine Zusammenfassung weiterer verfügbarer Befehle, diese Liste kann man ebenfalls mittels {{ic|q}} verlassen.


Will man sich die Manpage nicht anzeigen, sondern ausgeben lassen, benutzt man beim Aufruf zum Beispiel den Parameter -P“. Durch diesen Parameter kann man den Pager definieren. Der Pager dient zur Anzeige.
Will man sich die Manpage nicht anzeigen, sondern ausgeben lassen, benutzt man beim Aufruf zum Beispiel den Parameter {{ic|-P}}. Durch diesen Parameter kann man den Pager definieren. Der Pager dient zur Anzeige.


  man -P cat man
  man -P cat man


Dies Zeigt die Manpage von „man“ mittels „cat“ an. Mittels „man -t man > manpage.ps“ generiert man eine PostScript-Datei (Parameter -t“), und gibt sie in die Datei „manpage.ps“ aus. Diese kann man nun mit einem PostScript-Fähigen Programm weiterverarbeiten.
Dies zeigt die Manpage von {{ic|man}} mittels {{ic|cat}} an. Mittels  
  man -t man > manpage.ps
generiert man eine PostScript-Datei (Parameter {{ic|-t}}), und gibt sie in die Datei {{ic|manpage.ps}} aus. Diese kann man nun mit einem PostScript-fähigen Programm weiterverarbeiten.


=== Konfiguration ===
=== Konfiguration ===
Die Konfiguration von „man“ geschieht in der Datei /etc/man_db.conf“. Die Standard-Einstellungen sind sinnvoll gewählt, und sollten nur angepasst werden, wenn man weiß, was man tut, da sich die Änderungen an dieser Datei für alle User auf dem System bemerkbar machen.
Die Konfiguration von {{ic|man}} geschieht in der Datei {{ic|/etc/man_db.conf}}. Die Standard-Einstellungen sind sinnvoll gewählt, und sollten nur angepasst werden, wenn man weiß, was man tut, da sich die Änderungen an dieser Datei für alle User auf dem System bemerkbar machen.


Einige Parameter, deren Änderung mitunter sinnvoll sein kann, sind
Einige Parameter, deren Änderung mitunter sinnvoll sein kann, sind


* '''MANPATH''' Definiert den Pfad, an dem nach Manpages gesucht wird. Hier kann man zum Beispiel eine neue Definition „MANPATH /home/user/.manpages“ hinzufügen, wenn man in diesem Verzeichnis eigene Manpages liegen hat.
* '''MANPATH''' Definiert den Pfad, in dem nach Manpages gesucht wird. Hier kann man zum Beispiel eine neue Definition {{ic|MANPATH /home/user/.manpages}} hinzufügen, wenn man in diesem Verzeichnis eigene Manpages liegen hat.
* '''MANSELECT''' Dies bestimmt die Reihenfolge, in der automatisch die Manpage einer Sektion ausgewählt wird, wenn die Sektion nicht beim Starten angegeben wird. Möchte man – wenn möglich – immer die Manpage der dritten Sektion haben, und danach erst die der ersten Sektion, setzt man MANSELECT z.B. auf „3:1:x:y:z“. x, y und z sind dabei weitere Sektionsangaben.
* '''MANSELECT''' Dies bestimmt die Reihenfolge, in der automatisch die Manpage einer Sektion ausgewählt wird, wenn die Sektion nicht beim Starten angegeben wird. Möchte man – wenn möglich – immer die Manpage der dritten Sektion haben, und danach erst die der ersten Sektion, setzt man MANSELECT z.B. auf {{ic|3:1:x:y:z}}. x, y und z sind dabei weitere Sektionsangaben.
* '''MANDEFOPTIONS''' Möchte man keine Konfigurationsdatei erstellen, und auch an den Standardoptionen nichts ändern, kann man hier Optionen angeben, die automatisch bei jedem „man“-Aufruf verwendet werden sollen.
* '''MANDEFOPTIONS''' Möchte man keine Konfigurationsdatei erstellen, und auch an den Standardoptionen nichts ändern, kann man hier Optionen angeben, die automatisch bei jedem {{ic|man}}-Aufruf verwendet werden sollen.
* '''PAGER''' Siehe [[#Farbige Ausgabe|Farbige Ausgabe]]
* '''PAGER''' Siehe [[#Farbige Ausgabe|Farbige Ausgabe]]


==== Persönliche Einstellungen ====
==== Persönliche Einstellungen ====
Wenn man die Einstellungen User-Bezogen machen möchte, muss man sich eines kleinen Tricks bedienen. Zuerst kopiert man die Original-Datei in das Benutzerverzeichnis, und passt sie dann an. Wenn man „man“ nun mit dem Parameter „-C“ aufruft, kann man hier eine Konfigurationsdatei angeben, die verwendet werden soll.
Das Verhalten von {{ic|man}} kann pro Benutzer über die Datei {{ic|~/.manpath}} angepasst werden. Diese wird automatisch gegenüber der systemweiten Datei {{ic|/etc/man_db.conf}} bevorzugt. Zuerst kopiert man die Original-Datei nach {{ic|~/.manpath}} und passt diese den eigenen Bedürfnissen an.


  man -C /home/user/.manconfig
  cp /etc/man_db.conf ~/.manpath
$EDITOR ~/.manpath


Dies startet „man“ mit der Konfigurationsdatei „/home/user/.manconfig“. Der Dateiname ist hier beispielhaft „.manconfig“, kann aber auch anders lauten. Wenn man die Änderung dauerhaft machen möchte, muss man sich für den Aufruf einen Alias anlegen.
Alternativ kann auch eine spezielle Konfigurationsdatei über den Kommandozeilenparameter {{ic|-C}} angegeben werden:


  alias man='man -C /home/user/.manconfig'
  man -C ~/alternative_manconfig
 
Diesen Alias kann man sich, wenn man ihn dauerhaft verwenden möchte, in die [[bashrc|.bashrc]] schreiben.
 
Siehe auch [[#Todo|Todo]]


== Farbige Ausgabe ==
== Farbige Ausgabe ==
[[Bild:man_most.png|thumb|Die Manpage von „man“ in der deutschen Übersetzung, durch „most“ geparst]]
[[Bild:man_most.png|thumb|Die Manpage von {{ic|man}} in der deutschen Übersetzung, durch {{ic|most}} geparst]]


Der von „man“ standardmäßig verwendete Pager ist „less“, dieses bietet nur sehr geringe Möglichkeiten, die Ausgabe grafisch zu gestalten. Wer häufig manpages liest, hätte eventuell gerne eine etwas ansprechendere Ausgabe der Manpages. Dies ist mit dem Programm „most“ möglich, welches zuerst installiert werden muss
Der von {{ic|man}} standardmäßig verwendete Pager ist {{ic|less}}, dieses bietet nur sehr geringe Möglichkeiten, die Ausgabe grafisch zu gestalten. Wer häufig manpages liest, hätte eventuell gerne eine etwas ansprechendere Ausgabe der Manpages. Dies ist mit dem Programm {{ic|most}} möglich, welches zunächst installiert werden muss:


  pacman -S most
  pacman -S most


Nun ändert man – entweder wie oben beschrieben in der persönlichen Konfigurationsdatei oder in der systemweiten Konfigurationsdatei die Angabe PAGER auf /usr/bin/most -s“. Wenn man nun eine Manpage aufruft, werden verschiedene Dinge farbig hervorgehoben.
Nun ändert man – entweder wie oben beschrieben in der persönlichen Konfigurationsdatei oder in der systemweiten Konfigurationsdatei - die Angabe PAGER auf {{ic|/usr/bin/most -s}}. Wenn man nun eine Manpage aufruft, werden verschiedene Dinge farbig hervorgehoben.


Alternativ bekommt man die farbigen Man-Seiten auch mittels man -P most mutt (um z. B. die Man-Seite von mutt aufzurufen); kann natürlich auch als alias in die .bashrc eingetragen werden: alias man='man -P most'
Alternativ bekommt man die farbigen Man-Seiten auch mittels man -P most mutt (um z. B. die Man-Seite von mutt aufzurufen); dies kann natürlich auch als alias in die {{ic|.bashrc}} eingetragen werden:
  alias man='man -P most'


=== Farben anpassen ===
=== Farben anpassen ===
Die Farben, die „most“ verwendet, werden Systemweit in der Datei /etc/most.conf“, oder benutzerabhängig in /home/user/.mostrc“ definiert.
Die Farben, die {{ic|most}} verwendet, werden systemweit in der Datei {{ic|/etc/most.conf}}, oder benutzerabhängig in {{ic|/home/user/.mostrc}} definiert.


  color normal fg bg
  color normal fg bg
Zeile 79: Zeile 79:
  color overstrike fg bg
  color overstrike fg bg


„fg“ und „hg“ definieren die Vordergrundfarbe (fg – foreground) und die Hintergrundfarbe (bg – background) des jeweiligen Objektes. Welche Farben möglich sind, erfährt man über „man colors“. Diese Manpage ist Teil von [[Tk]].
{{ic|fg}} und {{ic|bg}} definieren die Vordergrundfarbe (fg – foreground) und die Hintergrundfarbe (bg – background) des jeweiligen Objektes. Welche Farben möglich sind, erfährt man über {{ic|man colors}}. Diese Manpage ist Teil von [[Tk]].
 
== Todo ==
* '''Persönliche Einstellungen''' Besteht die Möglichkeit, das auch ohne Alias zu lösen?
* '''Farbige Ausgabe''' vi(m) bietet ebenfalls die Möglichkeit, Manpages auszugeben. Das hat allerdings bei mir nicht sonderlich schön funktioniert.


== Weblinks ==
== Weblinks ==
* [http://www.opengroup.org/austin/papers/posix_faq.html POSIX-FAQ] {{sprache|en}}
* [http://www.opengroup.org/austin/papers/posix_faq.html POSIX-FAQ] {{sprache|en}}
* [http://linux.die.net/man/ Manpages online lesen] {{sprache|en}}
* [http://linux.die.net/man/ Manpages online lesen] {{sprache|en}}
* [http://www.linuxhowtos.org/System/creatingman.htm Eigene Manpages erstellen] {{sprache|en}}


[[Kategorie:Systemverwaltung]]
[[Kategorie:Systemverwaltung]]
[[Kategorie:Konfiguration]]
[[Kategorie:Konfiguration]]
[[Kategorie:Konsole]]
[[Kategorie:Konsole]]
[[Kategorie:Unvollständig]]
[[Kategorie:Grundlagen]]
[[Kategorie:Grundlagen]]
[[en:Man Page]]
[[en:Man Page]]

Aktuelle Version vom 26. Juni 2017, 20:35 Uhr

Manpage steht für „manual page“, also „Handbuchseite“, und ist unter UNIX und praktisch allen verwandten Systemen ein gängiges, standardisiertes Werkzeug, um Hilfetexte zu Programmen bereitzustellen. In Manpages werden Informationen und Optionen zu Programmen ausführlicher erläutert als im Hilfe-Parameter (--help) eines Programmes.

Zur Ausgabe der Manpages wird das Systemprogramm less verwendet, es können aber auch andere Ausgabeprozessoren verwendet werden (siehe Abschnitt Farbige Ausgabe).

Das Programm man

Standard-Ansicht der Manpage zu man in der deutschen Übersetzung

Um Manpages zu lesen, wird das Programm man verwendet. Standardmäßig zeigt man die Manpage aus der ersten Sektion an. Es sind durch POSIX derzeit 12 Sektionen standardisiert.

  • Sektion 1: Nutzerbefehle
  • Sektion 2: Systemaufrufe
  • Sektion 3: Bibliotheksaufrufe
  • Sektion 3p: Perl-Module
  • Sektion 3tcl: Tcl-Module
  • Sektion 4: Spezialdateien
  • Sektion 5: Dateiformate
  • Sektion 6: Spiele
  • Sektion 7: Konventionen
  • Sektion 8: Systemverwaltung
  • Sektion 9: Kernelverwaltung
  • Sektion n: Neu

Die Angabe der Sektionen ist allerdings nur von Bedeutung, wenn die Manpage in verschiedenen Sektionen unterschiedlich definiert ist. Standardmäßig wird immer die erste Sektion probiert. Dieses Verhalten ist anpassbar. Siehe Konfiguration

Ruft man nun die Manpage zu man auf, also man man erhält man eben diese Manpage. Mit den Pfeiltasten kann man hier umherscrollen. Wenn man einen bestimmten Begriff suchen möchte, geht dies mit einem vorangestellten Slash.

/begriff

Dies durchsucht die aktuell angezeigte Manpage ab der aktuellen Position nach der Zeichenfolge begriff. Die Suche ist schreibungsabhängig. begriff wird also nur gefunden, wenn in der Manpage auch begriff steht, steht dort nur BEGRIFF, wird er nicht gefunden.

Verlassen wird das Programm mittels q. Mittels h erscheint eine Zusammenfassung weiterer verfügbarer Befehle, diese Liste kann man ebenfalls mittels q verlassen.

Will man sich die Manpage nicht anzeigen, sondern ausgeben lassen, benutzt man beim Aufruf zum Beispiel den Parameter -P. Durch diesen Parameter kann man den Pager definieren. Der Pager dient zur Anzeige.

man -P cat man

Dies zeigt die Manpage von man mittels cat an. Mittels

 man -t man > manpage.ps

generiert man eine PostScript-Datei (Parameter -t), und gibt sie in die Datei manpage.ps aus. Diese kann man nun mit einem PostScript-fähigen Programm weiterverarbeiten.

Konfiguration

Die Konfiguration von man geschieht in der Datei /etc/man_db.conf. Die Standard-Einstellungen sind sinnvoll gewählt, und sollten nur angepasst werden, wenn man weiß, was man tut, da sich die Änderungen an dieser Datei für alle User auf dem System bemerkbar machen.

Einige Parameter, deren Änderung mitunter sinnvoll sein kann, sind

  • MANPATH Definiert den Pfad, in dem nach Manpages gesucht wird. Hier kann man zum Beispiel eine neue Definition MANPATH /home/user/.manpages hinzufügen, wenn man in diesem Verzeichnis eigene Manpages liegen hat.
  • MANSELECT Dies bestimmt die Reihenfolge, in der automatisch die Manpage einer Sektion ausgewählt wird, wenn die Sektion nicht beim Starten angegeben wird. Möchte man – wenn möglich – immer die Manpage der dritten Sektion haben, und danach erst die der ersten Sektion, setzt man MANSELECT z.B. auf 3:1:x:y:z. x, y und z sind dabei weitere Sektionsangaben.
  • MANDEFOPTIONS Möchte man keine Konfigurationsdatei erstellen, und auch an den Standardoptionen nichts ändern, kann man hier Optionen angeben, die automatisch bei jedem man-Aufruf verwendet werden sollen.
  • PAGER Siehe Farbige Ausgabe

Persönliche Einstellungen

Das Verhalten von man kann pro Benutzer über die Datei ~/.manpath angepasst werden. Diese wird automatisch gegenüber der systemweiten Datei /etc/man_db.conf bevorzugt. Zuerst kopiert man die Original-Datei nach ~/.manpath und passt diese den eigenen Bedürfnissen an.

cp /etc/man_db.conf ~/.manpath
$EDITOR ~/.manpath

Alternativ kann auch eine spezielle Konfigurationsdatei über den Kommandozeilenparameter -C angegeben werden:

man -C ~/alternative_manconfig

Farbige Ausgabe

Die Manpage von man in der deutschen Übersetzung, durch most geparst

Der von man standardmäßig verwendete Pager ist less, dieses bietet nur sehr geringe Möglichkeiten, die Ausgabe grafisch zu gestalten. Wer häufig manpages liest, hätte eventuell gerne eine etwas ansprechendere Ausgabe der Manpages. Dies ist mit dem Programm most möglich, welches zunächst installiert werden muss:

pacman -S most

Nun ändert man – entweder wie oben beschrieben in der persönlichen Konfigurationsdatei oder in der systemweiten Konfigurationsdatei - die Angabe PAGER auf /usr/bin/most -s. Wenn man nun eine Manpage aufruft, werden verschiedene Dinge farbig hervorgehoben.

Alternativ bekommt man die farbigen Man-Seiten auch mittels man -P most mutt (um z. B. die Man-Seite von mutt aufzurufen); dies kann natürlich auch als alias in die .bashrc eingetragen werden:

 alias man='man -P most'

Farben anpassen

Die Farben, die most verwendet, werden systemweit in der Datei /etc/most.conf, oder benutzerabhängig in /home/user/.mostrc definiert.

color normal fg bg
color status fg bg
color underline fg bg
color overstrike fg bg

fg und bg definieren die Vordergrundfarbe (fg – foreground) und die Hintergrundfarbe (bg – background) des jeweiligen Objektes. Welche Farben möglich sind, erfährt man über man colors. Diese Manpage ist Teil von Tk.

Weblinks