Come posso ottenere l'output di testo non elaborato di un manuale nel mio terminale?
Voglio avere il manuale senza una schermata di tipo "meno" visualizzata.
Come posso ottenere l'output di testo non elaborato di un manuale nel mio terminale?
Voglio avere il manuale senza una schermata di tipo "meno" visualizzata.
Risposte:
Puoi leggere direttamente i file compressi (che potrebbero anche non essere compressi) man
, risiedendo /usr/share/man/
in directory corrispondenti alle rispettive sezioni.
Quindi, ad esempio, per ottenere il contenuto non elaborato della man
pagina di cat
, devi leggere /usr/share/man/man1/cat.1.gz
:
zcat /usr/share/man/man1/cat.1.gz
Allo stesso modo, per man 2 fork
:
zcat /usr/share/man/man2/fork.2.gz
Se vuoi un formato di testo, E non vuoi quei fastidiosi "separatori di pagine" ovunque nel documento, un modo è:
zcat /usr/share/man/en/man1/man.1.gz | groff -m man -rcR=1 -T ascii -
( /usr/share/man/en/man1/man.1.gz
passa alla pagina man che stai cercando. Questa è la pagina man per man (uguale a:, man man
ma senza i separatori di pagina)
C'è un modo per eseguire un comando man personalizzato che fa lo stesso per te, ma non posso provarlo in questo momento ...
Il risultato del reindirizzamento man
(come suggerito in altre risposte) dovrebbe funzionare come previsto. man
rileva che il suo output non è un tty, quindi evita di stampare caratteri di escape appropriati che altrimenti fornirebbero corsivo , grassetto e altra formattazione.
Come risposta più generale, è possibile utilizzare col -b
per eliminare tali caratteri dall'output di qualsiasi comando. Non tutti i comandi sono intelligenti come man
e potrebbero non rilevare che il loro output viene reindirizzato. In altre parole, avresti potuto fare qualcosa del tipo:
man command | col -b > somefile
-t
un'opzione per formattare la pagina man congroff
.