MAN(1)

NOM
man - formate et affiche les pages du manuel en ligne

SYNOPSIS
man [-acdfFhkKtwW] [--path] [-m système] [-p chaîne] [-C fichier_config] [-M chemin] [-P visualiseur] [-B navigateur] [-H visualiseur_html] [-S liste_sections] [section] nom ...

DESCRIPTION
man formate et affiche les pages du manuel en ligne. Si section est spécifiée, man ne recherchera que dans cette section du manuel. nom est le nom de la page qui est généralement le nom d'une commande, d'une fonction ou d'un fichier. Toutefois, si nom contient une barre oblique « / », il sera d'abord considéré en tant que nom de fichier, vous pouvez donc faire : man ./toto.5 ou même man /truc/machin/bidule.1.gz.

Voir plus loin pour une description sur la façon dont man cherche les fichiers pages de manuel.

OPTIONS

-C  fichier_config
    Spécifie le fichier de configuration à utiliser ; par défaut il s'agit de /etc/man.conf. (Voir man.conf(5).)

-M  chemin
    Indique la liste des répertoires dans lesquels la recherche des pages sera effectuée. Veuillez séparer les répertoires par le symbole deux points « : ». Une liste vide est équivalent à ne pas spécifier l'option -M. Voir CHEMIN DE RECHERCHE POUR LES PAGES DE MANUEL.

-P  visualiseur
    Indique le programme de visualisation des pages à employer. Cette option a priorité sur la variable d'environnement MANPAGER, qui, à son tour, a priorité sur la variable d'environnement PAGER. Par défaut, man utilisera /usr/bin/less -isrR.

-B  Spécifie quel navigateur utiliser pour les fichiers HTML. Cette option supplante la variable d'environnement BROWSER Par défaut, man utilise /usr/bin/lynx.

-H  Spécifie une commande qui produit un fichier texte à partir du fichier HTML. Cette option supplante la variable d'environnement HTMLPAGER Par défaut, man utilise /usr/bin/lynx-dump.

-S  liste_sections
    Il s'agit d'une liste de sections, séparées par le symbole deux points « : », dans lesquelles les pages seront recherchées. Elle a priorité sur la variable d'environnement MANSECT.

-a  Par défaut, man s'arrête après avoir affiché la première page de manuel trouvée. Cette option permet de l'obliger à afficher toutes les pages correspondant à la requête « nom » de l'utilisateur, s'il y en a plusieurs, et pas seulement la première trouvée.

-c  Reformater la page de manuel, même si une version préformatée à jour existe. Cela peut être utile si cette dernière a été prévue pour un écran de taille différente ou bien si elle est abîmée.

-d  Ne pas afficher les pages de manuel, mais fournir une grande quantité d'informations de débogage.

-D  Afficher à la fois les pages de manuel et les informations de débogage.

-f  Équivalent à whatis.

-h  Afficher un court message d'aide et quitter.

-k  Équivalent à apropos.

-K  Chercher la chaîne spécifiée dans *toutes* les pages de manuel. Attention : cela peut être très long ! Et il peut être utile de spécifier une section. (Pour donner une vague idée, sur ma machine, il faut environ une minute pour 500 pages de manuel.)

-m  système
    Demander l'utilisation d'un autre jeu de pages de manuel, en fonction du nom de système indiqué.

-p  chaîne
    Spécifie la séquence de préprocesseurs à exécuter avant nroff ou troff. Selon votre installation de Linux, vous ne disposerez pas forcément de tous les programmes possibles. Voici les plus courants et les lettres qui les désignent : eqn (e), grap (g), pic (p), tbl (t), vgrind (v), refer (r). Cette option a priorité sur la variable d'environnement MANROFFSEQ.

-t  Utiliser /usr/bin/groff -Tps -mandoc pour formater la page de manuel, la sortie se faisant sur stdout. La sortie de /usr/bin/groff -Tps -mandoc peut nécessiter un passage par certains filtres avant de pouvoir être affichée ou imprimée.

-w ou --path
    Ne pas afficher les pages de manuel, mais les emplacements des fichiers qui auraient été formatés ou affichés. Si aucun argument n'est précisé, indique sur la sortie standard la liste des répertoires dans lesquels man recherche les pages. Si manpath est un lien sur le programme man, alors « manpath » est équivalent à la commande « man --path ».

-W  Comme -w, mais affiche les noms de fichiers, un par ligne, sans aucune autre information. Très utile dans des commandes shell du genre : man -aW man | xargs ls -l

PAGES FORMATÉES
Afin de gagner du temps, man tente de sauvegarder les pages formatées au lieu de les interpréter chaque fois qu'elles sont demandées. Traditionnellement, les versions formatées des pages de REP/manX sont enregistrées dans REP/catX, mais d'autres correspondances entre les répertoires man et les répertoires cat peuvent être indiquées dans le fichier /etc/man.conf. Aucune page formatée n'est enregistrée si le répertoire « cat » correspondant n'existe pas. Aucune page formatée n'est enregistrée si elle est formatée avec une longueur de ligne différente de 80. Aucune page formatée n'est enregistrée si le fichier /etc/man.conf contient la ligne NOCACHE.

Il est possible de rendre man suid utilisateur man. Dans ce cas, si un répertoire « cat » appartient à man et a le mode 0755 (seul man peut l'écrire), et que les fichiers formatés appartiennent eux aussi à man et ont le mode 0644 ou 0444 (seul man peut les écrire, voire personne), aucun utilisateur normal ne pourra modifier les pages formatées ou mettre d'autre fichiers dans le répertoire correspondant. Si man n'est pas suid, les répertoires « cat » devront avoir le mode 0777 afin que tout utilisateur puisse y laisser le résultat des formatages lors des consultations du manuel.

L'option -c force le reformatage d'une page, même si un fichier cat plus récent que le fichier source existe.

CHEMIN DE RECHERCHE POUR LES PAGES DE MANUEL
man utilise une méthode sophistiquée pour chercher les pages de manuels, basée sur l'invocation d'options et de variables d'environnement, le fichier de configuration /etc/man.conf, des heuristiques et conventions prédéfinies.

En premier lieu, lorsque l'argument nom de man contient une barre oblique « / », man suppose qu'il s'agit d'un fichier et aucune recherche complexe n'est lancée.

Mais dans la plupart des cas où nom ne contient pas de barre oblique, man recherche dans plusieurs répertoires un fichier qui pourrait être une page de manuel pour le sujet nommé.

Si vous spécifiez l'option -M liste_chemins, liste_chemins est une liste de répertoires, séparés par le symbole deux points « : », dans lesquels man effectuera sa recherche.

Si vous ne spécifiez pas -M mais que vous positionniez la variable d'environnement MANPATH, la valeur de cette variable est la liste des répertoires dans lesquels man effectuera sa recherche.

Si vous ne spécifiez pas une liste de chemins explicite avec -M ou MANPATH, man développe sa propre liste de chemins basée sur le contenu du fichier de configuration /etc/man.conf. Les déclarations MANPATH dans le fichier de configuration identifient des répertoires particuliers à inclure dans le chemin de recherche.

Qui plus est, les déclarations MANPATH_MAP complètent le chemin de recherche en fonction du chemin de recherche de vos commandes (autrement dit, de votre variable d'environnement PATH). La déclaration MANPATH_MAP indique, pour chacun des répertoires pouvant se trouver dans le chemin de recherche des commandes, un répertoire qui devrait être ajouté au chemin de recherche des pages de manuel. man scrute la variable PATH et ajoute au chemin de recherche des pages de manuel les répertoires correspondants. Ainsi, avec une utilisation correcte de MANPATH_MAP, lorsque vous tapez la commande man xyz, vous obtenez la page de manuel du programme que vous lanceriez si vous tapiez la commande xyz.

De plus, pour chacun des répertoires situés dans le chemin de recherche des commandes (nous l'appellerons « répertoire commandes ») pour lequel vous n'avez pas d'instruction MANPATH_MAP, man cherchera automatiquement un répertoire de pages de manuel à proximité, à savoir un sous-répertoire du « répertoire commandes » lui-même ou dans le répertoire parent du « répertoire commandes ».

Vous pouvez désactiver la recherche automatique de proximité en incluant l'instruction NOAUTOPATH dans le fichier de configuration /etc/man.conf.

Dans chaque répertoire du chemin de recherche décrit plus haut, man cherche un fichier nommé sujet.section, avec un suffixe optionnel sur le numéro de section et un possible suffixe de compression. S'il ne peut trouver un tel fichier, il regarde alors dans tous les sous-répertoires nommés manN ou catN où N est le numéro de la section du manuel. Si le fichier se trouve dans le sous-répertoire cat N, man suppose qu'il s'agit d'une page de manuel formatée (page cat). Autrement, man suppose qu'elle n'est pas formatée. Dans tous les cas, si le nom de fichier comporte une extension indiquant une compression connue (comme .gz), man suppose que le fichier est gzippé.

Si vous vouloir savoir où (ou si) man peut trouver une page de manuel sur un sujet particulier, utilisez l'option --path (-w).

ENVIRONNEMENT

MANPATH
    Si la variable MANPATH est positionnée, man utilisera sa valeur comme chemin de recherche des pages de manuel. Cette variable est prioritaire sur le fichier de configuration et le chemin de recherche automatique, mais cède cette priorité si l'option -M est utilisée. Voir CHEMIN DE RECHERCHE POUR LES PAGES DE MANUEL.

MANPL
    Si la variable MANPL est positionnée, sa valeur servira à définir la longueur de l'affichage de la page. Autrement, la page entière est affichée sur une seule et longue page.

MANROFFSEQ
    Si MANROFFSEQ est positionnée, sa valeur servira à déterminer le jeu de préprocesseurs à exécuter avant de lancer nroff ou troff. Par défaut, les pages sont passées dans le processeur de tableaux avant nroff.

MANSECT
    Si MANSECT est positionnée, sa valeur déterminera les sections du manuel dans lesquelles les pages seront recherchées.

MANWIDTH
    Si MANWIDTH est positionnée, sa valeur servira à définir la largeur de l'affichage de la page. Autrement, la page sera affichée sur toute la largeur de l'écran.

MANPAGER
    Si MANPAGER est positionnée, sa valeur sera considérée comme le nom du programme à utiliser pour visualiser la page de manuel. Dans le cas contraire, PAGER sera utilisée. Si aucune des deux variables n'est positionnée, /usr/bin/less -isrR sera utilisé.

LANG
    Si LANG est positionnée, sa valeur définira le nom du sous-répertoire où man commencera la recherche des pages de manuel. Ainsi, la commande « LANG=fr man 1 toto » aura pour effet de faire rechercher la page toto dans .../fr/man1/toto.1, et si ce fichier n'existe pas, dans .../man1/toto.1, où ... est un répertoire du chemin de recherche.

NLSPATH, LC_MESSAGES, LANG
    Les variables d'environnement NLSPATH et LC_MESSAGES (ou LANG lorsque la dernière n'existe pas) jouent un rôle dans la localisation du catalogue de messages. (Mais les messages anglais sont inclus dans le programme à la compilation, aucun catalogue n'est donc nécessaire pour un affichage dans la langue de Shakespeare.) Notez que les programmes comme col(1) qui sont appelés par man, utilisent également LC_CTYPE.

PATH
    PATH est utilisée pour la construction du chemin de recherche par défaut. Voir CHEMIN DE RECHERCHE POUR LES PAGES DE MANUEL.

SYSTEM
    SYSTEM est employée pour obtenir le nom du système alternatif par défaut (en vue de l'utilisation de l'option -m ).

BOGUES
L'option -t ne fonctionne que si un programme « troff-like » est installé.
Si vous voyez clignoter \255 ou <AD> au lieu de traits d'union, mettez « LESSCHARSET=latin1 » dans votre environnement.

ASTUCES
Si vous ajoutez la ligne
  (global-set-key [(f1)] (lambda () (interactive) (manual-entry (current-word)))) à votre fichier .emacs, vous obtiendrez la page de manuel de l'appel de la bibliothèque situé à la position courante du curseur lorsque vous presserez la touche F1.

Pour obtenir une version texte seul d'une page de manuel, sans retour arrière ni caractère de soulignement, essayez
  # man foo | col -b > foo.mantxt

AUTEUR
John W. Eaton est l'auteur historique de man. Federico Lucifredi <flucifredi@acm.org> en assure aujourd'hui la maintenance.

VOIR AUSSI
apropos(1), whatis(1), less(1), groff(1), man.conf(5).

TRADUCTION

Ce document est une traduction réalisée par René Cougnenc en mai 1995 et mise à jour par Alain Portal <aportal@univ-montp2.fr> le 7 novembre 2005.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=en man 1 man ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.