This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.
Please visit our production wiki at https://wiki.gentoo.org
Man page/Naviguer
Ce guide vous explique comment naviguer dans les pages de manuel en utilisant man.
Introduction
Le programme man
Chacun, à un certain stade de sa vie avec Linux l'a utilisé. Il s'agit de 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 x11-base/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 page man page ]. 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 dans une page de manuel est très facile. Utilisez les touches fléchées pour vous déplacer d'une ligne vers le haut ou vers le bas. Utilisez les touches « page vers le haut » et « page vers le bas » 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 :
e ^E j ^N CR * Forward one line (or N lines). y ^Y k ^K ^P * Backward one line (or N lines). f ^F ^V SPACE * Forward one window (or N lines). b ^B ESC-v * Backward one window (or N lines). z * Forward one window (and set window to N). w * Backward one window (and set window to N). ESC-SPACE * Forward one window, but don't stop at end-of-file. d ^D * Forward one half-window (and set half-window to N). u ^U * Backward one half-window (and set half-window to N). ESC-) RightArrow * Shift view right one half screen width (or N positions). ESC-( LeftArrow * Shift view left one half screen width (or N positions). F Forward forever; like "tail -f".
Searching, however, is more interesting. The two most basic searches are /pattern
and ?pattern
. The first version searches forwards, and the second searches backwards. pattern
is a regular expression pattern that is described in man 7 regex. Let's take for example searching for the -D
option to emerge. First, bring up the emerge man page:
user $
man emerge
Then, at the screen, press the / key to bring up the entry prompt to search forwards and enter in our search pattern:
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
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é :
--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.
If you hit a search result by accident and want to continue searching for the same results, simply press the / key again, and press Enter (i.e. don't put a pattern it). This will cause the search to default to the last pattern used. Now with some man pages, options are listed, then explained later on. Take the man 5 portage man page. It lists the files used, then explains their usage. Searching forward a few times would return the results, but there's an easier way to handle this, with the second search form, backwards searching. Let's use this to find the description on package.unmask. First, bring up man 5 portage:
user $
man 5 portage
Now press Shift + g. This will bring you to the end of the page:
SEE ALSO emerge(1), ebuild(1), ebuild(5), make.conf(5) Portage 2.0.51 Jan 2004 PORTAGE(5) lines 418-442/442 (END)
Now we'll go ahead and enter the pattern to search for with the ?pattern
backwards search option. First press the ? key to bring up the prompt, and then enter in package.unmask, our query:
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 :
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 :
- app-text/man2html - un programme de conversions des pages de manuel en html
- app-text/tkman - un navigateur de pages de manuel basé sur tk
Le navigateur KDE kde-base/konqueror de 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.