Comment puis-je obtenir la sortie texte brut d'un manuel dans mon terminal

8

Comment puis-je obtenir la sortie texte brut d'un manuel dans mon terminal?

Je souhaite afficher le manuel sans écran de type "moins".

user123456
la source
2
Que voulez-vous dire par "sortie de texte brut"? Il existe une -toption pour formater la page de manuel avec groff.
edwinksl

Réponses:

12

Vous pouvez changer le téléavertisseur en catutilisant l' -Poption:

man -P cat command

commandest la commande d'intérêt dont vous souhaitez lire la page de manuel.

Vous pouvez également rediriger la page de manuel vers un fichier que vous pouvez ensuite ouvrir pour lire:

man command > file
edwinksl
la source
4

Vous pouvez lire directement les manfichiers compressés (qui pourraient l'être aussi) , résidant /usr/share/man/dans des répertoires correspondant aux sections respectives.

Ainsi, par exemple, pour obtenir le contenu brut de la manpage de cat, vous devez lire /usr/share/man/man1/cat.1.gz:

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

De même, pour man 2 fork:

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

Si vous voulez un format de texte ET que vous ne voulez pas ces "séparateurs de pages" embêtants partout dans le document, une façon est:

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

( /usr/share/man/en/man1/man.1.gzpassez à la page de manuel que vous recherchez. Il s'agit de la page de manuel de man (identique à:, man manmais sans les séparateurs de page)

Il existe un moyen de faire une commande man personnalisée qui fait de même pour vous, mais je ne peux pas la tester pour le moment ...

Olivier Dulac
la source
1

La redirection de manla sortie (comme suggéré dans d'autres réponses) devrait fonctionner comme prévu. mandétecte que sa sortie n'est pas un tty, donc il évite d'imprimer les caractères d'échappement appropriés qui autrement fourniraient l' italique , le gras et tout autre formatage.

Comme réponse plus générale, vous pouvez utiliser col -bpour supprimer ces caractères de la sortie de n'importe quelle commande. Toutes les commandes ne sont pas aussi intelligentes manet peuvent ne pas détecter que leur sortie est redirigée. En d'autres termes, vous auriez pu faire quelque chose comme:

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