Wie kann ich eine Rohtextausgabe eines Handbuchs in meinem Terminal erhalten?

8

Wie kann ich eine Rohtextausgabe eines Handbuchs in meinem Terminal erhalten?

Ich möchte, dass das Handbuch ohne Bildschirm vom Typ "weniger" angezeigt wird.

user123456
quelle
2
Was meinst du mit "Rohtextausgabe"? Es besteht die -tMöglichkeit, die Manpage mit zu formatieren groff.
Edwinksl

Antworten:

12

Sie können den Pager catmithilfe der folgenden -POption ändern :

man -P cat command

Wo commandist der Befehl von Interesse, dessen Manpage Sie lesen möchten?

Sie können die Manpage auch in eine Datei umleiten, die Sie dann zum Lesen öffnen können:

man command > file
edwinksl
quelle
4

Sie können die komprimierten (möglicherweise auch nicht komprimierten) manDateien direkt lesen , die sich /usr/share/man/in Verzeichnissen befinden, die den jeweiligen Abschnitten entsprechen.

Um beispielsweise den Rohinhalt der manSeite von zu erhalten cat, müssen Sie Folgendes lesen /usr/share/man/man1/cat.1.gz:

zcat /usr/share/man/man1/cat.1.gz 

Ebenso für man 2 fork:

zcat /usr/share/man/man2/fork.2.gz
heemayl
quelle
3

Wenn Sie ein Textformat möchten UND diese lästigen "Seitentrennzeichen" nicht überall im Dokument möchten, haben Sie folgende Möglichkeiten:

zcat /usr/share/man/en/man1/man.1.gz | groff -m man -rcR=1 -T ascii -

(Wechseln Sie /usr/share/man/en/man1/man.1.gzzu der Manpage , nach der Sie suchen. Dies ist die Manpage für Man (wie:, man manjedoch ohne Seitentrennzeichen).

Es gibt eine Möglichkeit, einen benutzerdefinierten Man-Befehl auszuführen, der dasselbe für Sie tut, aber ich kann ihn derzeit nicht testen ...

Olivier Dulac
quelle
1

Die Umleitung mander Ausgabe (wie in anderen Antworten vorgeschlagen) sollte wie erwartet funktionieren. manErkennt, dass die Ausgabe kein tty ist, und vermeidet daher das Drucken geeigneter Escape-Zeichen, die sonst kursiv , fett und andere Formatierungen liefern würden .

Als allgemeinere Antwort können Sie col -bsolche Zeichen aus der Ausgabe eines beliebigen Befehls entfernen. Nicht alle Befehle sind so intelligent wie manund erkennen möglicherweise nicht, dass ihre Ausgabe umgeleitet wird. Mit anderen Worten, Sie hätten etwas tun können wie:

man command | col -b > somefile
Soren L. Hansen
quelle