logo hsb.horse
← Retour à l’index des snippets

Snippets

Sauvegarder les pages man dans un fichier texte

Comment sauvegarder la sortie de la commande man dans un fichier sur macOS/Linux. Utilisez col -b pour supprimer les caractères de contrôle et créer un texte lisible.

Publié: Mis à jour:

Parfois on veut sauvegarder la sortie de la commande man dans un fichier pour le lire dans un éditeur ou le partager. Une simple redirection mélange des caractères de contrôle, donc un post-traitement approprié est nécessaire.

Utiliser col -b

Terminal window
man <commande> | col -b > <nom_fichier>.txt

Exemple

Terminal window
man ls | col -b > ls_manual.txt

Cela crée un texte brut qui ne sera pas illisible quand ouvert dans un éditeur de texte classique.

Pourquoi la redirection simple ne fonctionne pas

Terminal window
man ls > ls_bad.txt

Sauvegarder comme ci-dessus sort les caractères de contrôle comme les backspaces (utilisés par man pour le formatage gras et souligné, apparaissant comme ^H, etc.) directement dans le fichier. Cela devient très difficile à lire dans des éditeurs autres que less.

col -b filtre ceux-ci, ne laissant que le texte tel qu’il apparaît.

Sauvegarder en PDF

Pour l’impression ou quand on veut du PDF, passer par PostScript.

macOS

Terminal window
man -t ls | pstopdf -i -o ls_manual.pdf

Linux

Terminal window
man -t ls > ls.ps
ps2pdf ls.ps ls_manual.pdf

L’option -t sort en format PostScript, qui est ensuite converti en PDF.

Résumé des options

MéthodeCommandeCas d’usage
Texte brutman …col -b
PDFman -t …pstopdf
HTMLman2htmlAffichage navigateur

Personnellement, le texte brut est le plus pratique. La recherche et le traitement sont faciles.