Man page/Naviguer

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Man page/Navigate and the translation is 100% complete.

Ce guide explique comment naviguer dans les pages de manuel en utilisant la commande man.

Introduction

Le programme man

Chacun, à un certain stade de sa vie avec Linux l'a utilisée : la commande man. Néanmoins, bien que le programme man lui-même soit assez simple dans sa structure, il dispose de quelques fonctionnalités autres que celle de simplement faire défiler une page. Ce document espère apporter un peu de lumière sur ces fonctionnalités.

Arrangement de Man

Les pages de manuel sont stockées principalement dans le répertoire /usr/share/man. Cependant, tant que lemplacement d'une page de manuel est listé dans la variable d'environnement MANPATH, man est capable de la retrouver. Gentoo stocke généralement les variables MANPATH dans /etc/env.d. Dans ces répertoires, il existe quelques dossiers intitulés manX, ou X est le numéro de section. Par exemple, un arrangement standard de man ressemble à ceci :

user $ls /usr/share/man | grep man
man0p
man1
man1p
man2
man3
man3p
man4
man5
man6
man7
man8
man9
mann

La numérotation réelle des sections semble être tout à fait standard. Néanmoins, notez qu'il y a un dossier mann et quelques dossiers man#p. La table suivante présente les répertoires de pages de manuel ci-dessus et ce qu'ils contiennent :

Répertoire Man Description
man0p Le "p" ici signifie POSIX, tout comme pour les répertoires qui contiennent p dans leur nom. Les pages de manuel dans ce répertoire décrivent la fonction de différents fichiers d'entête POSIX.
man1 Cette section est réservée aux commandes standards. La plupart des programmes placent leurs pages de manuel ici ; c'est pourquoi cette section a tendance à être la plus volumineuse.
man1p Cette section décrit la version POSIX de la commande décrite en 1p. Comme elle se contente de décrire les commandes de base, elle est beaucoup plus petite que man1.
man2 Cette section décrit les appels système au noyau Linux.
man3 Cette section décrit les fonctions de la bibliothèque C standard.
man4 Cette section décrit les périphériques spéciaux. Ces périphériques son généralement orientés noyau, mais Xorg-X11 y a aussi des entrées.
man5 Cette section décrit, à la fois, la constitution de certains fichiers et quels fichiers un programme utilise. Il se peut que ceux d'entre-vous qui lisent ce document soient familiers avec les références à man 5 portage pour une description de la structure du fichier de Portage, et à man 5 make.conf pour la constitution de make.conf.
man6 Cette section introduit les jeux et autres amusements.
man7 Cette sections décrit des items standards et d'autres très variés. Ces items standards comprennent les jeux de caractères, les instructions SQL, les normes ISO et les expressions régulières.
man8 Cette section décrit les commandes administratives (celles que l'administrateur utilise couramment).
man9 Cette section est assez peu fournie, mais elle est prévue pour accueillir la documentation sur les différents parties du noyau.
mann Cette section est principalement utilisée par dev-lang/tcl ou dev-lang/tk. Le "n" signifie nouveau.

Bien que cela ne soit pas une liste détaillée et exhaustive, elle couvre les pages de manuel qui intéressent la plupart des gens. Cependant, dans certains cas, vous pouvez savoir ce qu'une section présente aussi aisément que de consulter cette table. Le prochain chapitre vous montrera comment parcourir cet arrangement.

Travailler avec l'arrangement des pages de manuel

Feuilleter les pages de manuel

Maintenant que vous avez une idée claire de l'arrangement des pages de manuel, vous pouvez commencer à rechercher des commandes. Parfois, il nous faut affiner progressivement notre recherche. Le premier pas consiste à s'intéresser aux sections. Pour trouver la description d'une section, on peut utiliser man <section> intro, comme ceci :

user $man 3 intro

Malheureusement, cela ne marche pas toujours ! Cependant, heureusement pour nous, il y a une autre façon de rechercher des commandes qui peut retourner des résultats multiples (comme un appel à une bibliothèque et une commande système qui ont le même nom). Pour ce faire, nous utilisons l'option -K de la commande man de cette manière :

user $man -K sleep

Parfois la sortie peut prendre pas mal de place. Dans ce cas, il peut être préférable de spécifier plus de mots clé. Maintenant que nous savons où trouver la page de manuel, la section suivante va vous montrer comment la visualiser.

Visualiser les pages de manuel

Visualiser les pages de manuel peut être accompli de deux manières. En premier lieu avec la commande man [nom de la page man]. La deuxième manière utilise man <section> [nom de la page man]. Considérons sys-devel/bc par exemple. Nous pouvons voir, soit la première page de manuel qui apparaît avec bc (qui devrait être la section 1, parce que c'est la section de numéro le plus faible contenant une page de manuel sur bc) :

user $man bc

Cependant, comment faire pour avoir la version POSIX ? Dans ce cas nous utilisons la deuxième forme :

user $man 1p bc
BC(P)        POSIX Programmer's Manual           BC(P)
 
 
NAME
       bc - arbitrary-precision arithmetic language
...

Et la page de manuel est affichée. Maintenant que nous savons afficher une page de manuel, il est temps de l'utiliser. La section suivante vous montre comment naviguer et rechercher.

Naviguer et chercher dans les pages de manuel

Naviguer dans une page de manuel est très facile. Utilisez les touches fléchées et pour vous déplacer d'une ligne vers le haut ou vers le bas. Utilisez les touches Page up et Page down pour aller de page en page, respectivement vers le haut et vers le bas. Notez néanmoins que ces instructions de navigation supposent que la variable d'environnement PAGER est définie pour utiliser l'outil de pagination par défaut, à savoir less. less comprend aussi quelques autres commandes de navigation, mais les touches fléchées suffisent généralement :

CODE Commande de navigation supplémentaire de less
<nowiki>
  e  ^E  j  ^N  CR  *  Avancer d'une ligne   (ou N lignes).
  y  ^Y  k  ^K  ^P  *  Reculer d'une ligne   (ou N lignes).
  f  ^F  ^V  SPACE  *  Avancer d'une fenêtre (or N lignes).
  b  ^B  ESC-v      *  Reculer d'une fenêtre(or N lignes).
  z                 *  Avancer d'une fenêtre (et définir window à  N).
  w                 *  Reculer d'une fenêtre  (et définir window à  N).
  ESC-SPACE         *  Avancer d'une fenêtre, mais ne pas s'arrêter sur une fin de fichier.
  d  ^D             *  Avancer d'une demi-fenêtre (et définir half-window à N).
  u  ^U             *  vancer d'une demi-fenêtre  (et définir half-window à N)..
  ESC-)  Flèche à droite *  se décaler à droite d'un demi-écran (ou de N positions).
  ESC-(  Flèches à gauche  * se décaler à gauche d'un demi-écran (ou de N positions).
  F                    Avancer tout le temps ; comme "tail -f".

La recherche, pour sa part, est plus intéressante. Les deux commandes de recherche de base sont /pattern et ?pattern. La première version cherche en avant, la seconde en arrière. pattern est une expression régulière qui est décrite dans man 7 regex. Prenons l'exemple de la recherche de l'option -D de la commande emerge. Tout d'abord appelons la page emerge :

user $man emerge

Ensuite, appuyons sur la touche / pour faire apparaître l'invite de commande pour rechercher en avant et saisissons l'expression régulière à rechercher :

CODE Faire apparaître l'invite de commande de recherche en avant
gracefully handles updating installed packages to newer releases as well.
     It handles both source and binary packages, and it can be used to create
     binary packages for distribution.
 
EBUILDS, TBZ2S, CLASSES AND DEPENDENCIES
/\-D
Remarque
Le \ sert à échapper le signe - , qui devrait être utilisé en tant que partie de l'expression régulière.

Ceci recherchera la page de manuel et se focalisera sur l'item recherché :

CODE Résultats de la recherche en avant
--deep (-D)
        When used in conjunction with --update, this flag forces emerge to consider the entire
        dependency tree of packages, instead of checking only the immediate dependencies of
        the packages.  As an example, this catches updates in libraries that are not directly
        listed in the  dependencies of a package.

Si vous atteignez un résultat de recherche par accident et que vous voulez continuer à chercher parmi les mêmes résultats, appuyez simplement sur la touche /, puis faites Entrée (c.à.d. ne saisissez pas d'expression régulière). Ceci fera repartir la recherche avec la dernière expression régulière utilisée. Maintenant, dans quelques pages, les options sont listées, puis expliqués plus loin dans le texte. Prenez man 5 portage. Elle liste les fichiers utilisés, puis explique comment les utiliser. Une recherche en avant répétée quelques fois devrait retourner les résultats, mais il y a une manière plus facile d'appréhender cela ; elle consiste à utiliser la deuxième forme, la recherche en arrière.Essayons de l'utiliser pour trouver la description de package.unmask. Tout d'abord, appelons man 5 portage :

user $man 5 portage

Maintenant, appuyez sur Shift+g. Cela vous amènera en fin de page :

CODE Fin de la page de manuel après un SHIFT+g
SEE ALSO
       emerge(1), ebuild(1), ebuild(5), make.conf(5)
 
Portage 2.0.51        Jan 2004            PORTAGE(5)
lines 418-442/442 (END)

Avançons maintenant en entrant l'expression régulière à chercher avec l'option ?pattern de recherche en arrière. Tout d'abord appuyons sur la touche ? pour faire apparaître l'invite de commande et saisissons l'objet de notre recherche dans package.unmask :

CODE Spécifier notre recherche
SEE ALSO
       emerge(1), ebuild(1), ebuild(5), make.conf(5)
 
Portage 2.0.51        Jan 2004           PORTAGE(5)
?package.unmask

Faites Entrée pour afficher le résultat :

CODE Résultat de notre recherche
package.unmask
       Just like package.mask above, except here you list packages you want to unmask.
       Useful for overriding the global  package.mask  file (see below).  Note that
       this does not override packages that are masked via KEYWORDS.
...

La recherche est terminée ! Notez que, tout comme avec / , utiliser ? sans expression régulière revient à rechercher avec la dernière expression régulière utilisée.

Conclusion

Ceci conclut le guide sur man. Nous espérons avoir apporter un peu de clarté sur la navigation dans les pages, et peut-être même, avoir apporté de nouvelles astuces à des utilisateurs plus expérimentés. Pour ceux qui préfèrent un moyen alternatif pour naviguer dans les pages de manuel, les moyens suivants sont aussi disponibles :

Le navigateur KDE kde-apps/konqueror peut aussi vous permettre de naviguer dans les pages de manuel en utilisant la syntaxe man: dans la barre d'adresse.


This page is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Chris White
They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.