Linux / Commande man : lire et rechercher les pages de manuel
La commande man ouvre dans le terminal les pages de manuel disponibles sur votre système : commandes, fichiers de configuration, appels système ou fonctions de bibliothèque. Commencez par man ls, utilisez / pour chercher dans la page et q pour quitter si l’afficheur est less ; un numéro comme dans man 5 passwd sélectionne une catégorie de documentation.
Ouvrir un manuel et comprendre d’où il vient
man est une interface de consultation. Il recherche une page dans les chemins configurés, la met en forme puis la présente généralement dans un afficheur paginé, souvent less. Les pages sont fournies par les différents paquets logiciels : installer man ne fournit pas automatiquement le manuel de chaque programme.
Les exemples avancés ci-dessous concernent l’implémentation man-db, courante sur les distributions Linux. Identifiez la vôtre et ouvrez une première page :
man --version
man ls
Si man ou la page de ls manque, consultez la procédure de dépannage plus bas. Sinon, le titre indique habituellement le nom et le numéro de section, par exemple LS(1). Ce numéro ne représente pas la version de ls.
La forme générale suivante est une notation documentaire, pas une ligne à recopier littéralement :
man [options] [section] page
Les crochets désignent des éléments facultatifs. Pour une utilisation réelle, remplacez les noms génériques par une cible, comme man ls ou man 5 passwd. Les options prises en charge sont détaillées dans le manuel de man-db et dans le résultat local de man man.
Se déplacer, chercher et quitter avec less
Une fois man ls ouvert, saisissez /--all puis Entrée. Vous recherchez le texte de l’option dans la page, sans exécuter ls. Appuyez ensuite sur n pour retrouver une autre occurrence, puis sur q pour revenir au shell.
| Touche | Effet habituel dans less |
|---|---|
| Espace, Page suivante | Avancer d’un écran. |
b, Page précédente |
Reculer d’un écran. |
| Flèche haut, flèche bas | Se déplacer d’une ligne. |
g, G |
Aller au début, ou à la fin ; respectez la casse. |
/mot puis Entrée |
Chercher vers l’avant. |
?mot puis Entrée |
Chercher vers l’arrière. |
n, N |
Répéter dans le sens de la dernière recherche, ou dans le sens opposé. |
h |
Afficher l’aide de less. |
q |
Quitter l’affichage courant. |
Les recherches de less utilisent normalement des expressions régulières : certains caractères ont un sens spécial. Pour une option, un nom long comme --all peut être plus facile à repérer qu’une lettre courte rencontrée ailleurs dans le texte. Le manuel de less décrit ces commandes.
Ces touches concernent l’afficheur, pas toutes les implémentations de man. Les variables MANPAGER ou PAGER et la configuration locale peuvent sélectionner un autre programme ; consultez son aide si l’écran réagit différemment.
Lire la structure et les notations d’une page
| Rubrique courante | Ce qu’il faut y chercher |
|---|---|
NAME / NOM |
Le nom et la fonction en une ligne. |
SYNOPSIS |
La syntaxe, les arguments et les formes possibles. |
DESCRIPTION |
Le fonctionnement et les conditions d’utilisation. |
OPTIONS |
Le sens des options et les valeurs acceptées. |
EXIT STATUS |
Les codes de retour et leur interprétation. |
ENVIRONMENT |
Les variables qui influencent le comportement. |
FILES |
Les fichiers de configuration ou de données associés. |
EXAMPLES |
Des exemples, quand la page en fournit. |
SEE ALSO / VOIR AUSSI |
Les références aux pages complémentaires. |
Toutes les pages ne comportent pas toutes ces rubriques. Dans une syntaxe, le texte mis en évidence indique souvent ce qu’il faut saisir, tandis qu’un argument en italique doit être remplacé. [ ] marque généralement une partie facultative et ... une répétition possible. Le rendu peut utiliser soulignement ou couleurs à la place de l’italique ; lisez aussi l’explication propre à la page.
Un code de retour non nul ne représente pas toujours le même résultat selon les commandes. Par exemple, une commande de comparaison peut l’utiliser pour signaler une différence attendue : la rubrique correspondante vous évite d’interpréter tous les résultats comme une erreur identique.
Choisir la bonne section numérotée
Un même nom peut exister pour une commande, une fonction ou un fichier. Les sections permettent de les distinguer :
| Section | Domaine | Exemples |
|---|---|---|
| 1 | Commandes et programmes utilisateur. | ls(1), grep(1) |
| 2 | Appels système du noyau. | open(2), read(2) |
| 3 | Fonctions de bibliothèque. | printf(3), malloc(3) |
| 4 | Fichiers spéciaux et périphériques. | null(4) |
| 5 | Formats de fichiers et conventions. | passwd(5), fstab(5) |
| 6 | Jeux. | Pages des jeux installés. |
| 7 | Concepts et sujets divers. | signal(7), path_resolution(7) |
| 8 | Administration système. | mount(8), useradd(8) |
| 9 | Routines du noyau, section non standard. | Peut être absente. |
man 1 passwd
man 5 passwd
La première page concerne la commande de changement de mot de passe ; la seconde explique le format de /etc/passwd. Sans numéro, man passwd affiche normalement la première page trouvée dans son ordre de recherche, qui peut être configuré.
Avec man-db, les formes man passwd.5 et man 'passwd(5)' sont également possibles. Les guillemets protègent les parenthèses du shell. La forme man 5 passwd reste facile à lire et à utiliser sur différents systèmes.
Trouver plusieurs pages portant le même nom
man -f passwd
whatis passwd
man -a passwd
-f et whatis affichent les noms de pages et leurs descriptions courtes disponibles dans l’index. Vous pouvez ainsi voir les sections proposées avant d’en choisir une.
-a permet de consulter successivement les correspondances trouvées. Selon l’implémentation et ses réglages, quitter une page avec q peut faire apparaître une proposition pour la suivante : cela ne signifie pas nécessairement que vous êtes déjà revenu au shell. Lisez le message de transition affiché.
Le résultat dépend des paquets documentaires installés et de leur index. Un nom connu sur une autre machine peut donc donner moins de pages ici sans que la commande elle-même fonctionne différemment.
Rechercher quand on ne connaît pas le nom
Chercher dans les noms et résumés
man -k 'copier'
apropos 'copier'
man -L C -k 'copy files'
-k et apropos recherchent dans les noms et descriptions courtes. Le mot français dépend de la présence de traductions ; le dernier exemple demande la locale C pour chercher une expression anglaise dans les descriptions disponibles correspondantes.
La recherche est normalement interprétée comme une expression régulière. Les guillemets protègent l’expression du shell, mais n’en désactivent pas les caractères spéciaux pour l’outil. Une absence de résultat peut venir du choix des mots, de la langue ou d’un index manquant.
Étendre la recherche aux sources des pages
man -K 'environment variable'
man -L C -s 5 -K 'password database'
-K examine les sources des pages, pas seulement leurs résumés. Cette recherche peut être lente ; le second exemple limite la section à 5. Dans man-db, les termes sont par défaut des chaînes simples ; une recherche par expression régulière demande l’option correspondante.
Comme il s’agit des sources mises en forme ensuite par man, une chaîne peut être coupée par des commandes de présentation ou écrite avec des échappements. Vous pouvez donc manquer un mot visible à l’écran, ou trouver un commentaire qui n’y apparaît pas. Commencez par -k et une page ciblée avant de parcourir toute la collection.
Retrouver le fichier, la langue et les chemins de recherche
| Option man-db | Usage |
|---|---|
-w |
Afficher l’emplacement de la source de la page sans ouvrir son affichage. |
-l fichier |
Lire un fichier local de manuel au lieu de rechercher son nom dans la collection. |
-L locale |
Sélectionner une locale pour cette invocation. |
-M chemin |
Fournir explicitement le chemin de recherche des pages. |
man -w ls
locale
printf '%s\n' "$LANG"
man -L fr ls
man -L C ls
man -w ls affiche le chemin de la page sélectionnée, éventuellement compressée. locale décrit les réglages linguistiques de la session. Une demande en français ne crée pas une traduction : si la page n’est pas installée dans cette langue, une version de repli, souvent anglaise, peut être utilisée.
Une traduction peut être moins récente que l’original. Si une option semble incohérente avec le programme, comparez sa version, la page en locale C et le paquet qui fournit la documentation. Une page Internet peut aussi décrire une autre implémentation que celle de votre serveur.
manpath
printf '%s\n' "$MANPATH"
manpath indique les chemins calculés. Une variable MANPATH définie manuellement peut modifier cette sélection ; ne remplacez pas les chemins par une valeur arbitraire pour résoudre une page absente. Avec -l, utilisez un fichier de manuel de provenance connue et dans le format attendu, pas un document texte quelconque.
Utiliser help pour les commandes internes de Bash
cd, alias ou read peuvent être exécutés directement par le shell. Dans Bash, identifiez ce qui sera appelé puis consultez son aide interne :
type cd
help cd
help -m cd
type -a printf
help -m présente l’aide dans un format proche d’une page de manuel. type -a peut montrer plusieurs définitions d’un même nom : alias, fonction, commande interne ou programme externe. Le manuel printf(3), par exemple, documente une fonction de bibliothèque et ne décrit pas la commande interne Bash.
Le guide de la commande interne help de Bash (en anglais) complète cette consultation. L’aide obtenue avec h dans less concerne au contraire l’afficheur lui-même. Pour le shell entier, utilisez man bash si sa page est installée.
Résoudre une page de manuel absente
Vérifier le nom, la section et les paquets
Un message No manual entry for… indique que la recherche n’a pas trouvé de page correspondante. Vérifiez le nom et la section, puis le type de commande ; exemple avec ls :
type -a ls
command -v ls
Dans une image minimale ou un conteneur, le lecteur ou les pages peuvent ne pas être installés. Sur Debian/Ubuntu, les paquets usuels de base sont :
sudo apt update
sudo apt install man-db manpages
Sur Rocky Linux et des systèmes utilisant DNF, l’exemple habituel est :
sudo dnf install man-db man-pages
Choisissez uniquement la procédure de votre distribution et relisez les changements proposés. Ces paquets ne couvrent pas nécessairement une commande précise, les pages de développement ou toutes les traductions. Certaines pages sont dans le paquet du programme, d’autres dans un paquet documentaire séparé. Utilisez la recherche des paquets pour le vérifier.
Distinguer la recherche d’une page et son index
Si man nom fonctionne mais que man -k ou whatis ne trouve rien, vérifiez les mots et la langue puis l’index. Dans un environnement man-db, sa reconstruction administrative peut être appropriée :
sudo mandb
Cette opération met à jour des bases d’index ; elle n’installe pas une page manquante. Vérifiez ensuite le résultat de la même recherche. Si le problème persiste, comparez manpath, les variables de la session et les fichiers effectivement fournis par le paquet.
Choisir entre man, --help, info et help
| Outil | Bon usage | Limite |
|---|---|---|
programme --help |
Vérifier rapidement syntaxe et options. | Option non universelle ; texte parfois bref. |
man programme |
Lire les détails de la référence installée. | La page doit être fournie et trouvée. |
info programme |
Parcourir un manuel structuré en nœuds et chapitres, notamment pour GNU. | Le lecteur et le document Info doivent être disponibles. |
help commande dans Bash |
Consulter une commande interne du shell courant. | Ne décrit pas tous les programmes externes ni les autres shells. |
Pour préparer une modification, ouvrez la page du fichier plutôt qu’une commande homonyme :
man 5 fstab
man 5 ssh_config
man 5 sshd_config
ssh_config concerne le client SSH et sshd_config le serveur. Pour un concept ou une interface de programmation, suivez les numéros donnés dans VOIR AUSSI, par exemple man 2 open et man 7 path_resolution. Cette méthode vous permet de vérifier le sens d’une option ou d’un champ dans son contexte avant d’exécuter une commande trouvée ailleurs.




