Objectifs de cet atelier pratique :
- prise en main de la documentation en ligne
- acquérir les réflexes de base pour trouver de l’aide
Unix est long et la vie est brève
Peut-être avez-vous déjà eu l’occasion de jeter un coup d’œil à un manuel de référence Unix : un de ces pavés indigestes comptant généralement un bon millier de pages, et qui vous présentent une myriade de commandes susceptibles d’accepter chacune une ribambelle d’options, égrenées par ordre alphabétique,
Même si vous ne connaissez que quelques commandes avec une poignée d’options, il arrive parfois que vous ne vous rappeliez plus la syntaxe exacte de ce que vous souhaitez taper. C’est même fréquent, aussi bien pour les débutants que les experts. Quelle était donc l’option pour la copie récursive d’un répertoire ? cp -r
ou -R
? Et comment fallait-il s’y prendre pour voir les propriétés détaillées d’un répertoire sans en afficher le contenu ?
Sous Linux, notre premier réflexe consistera à chercher l’aide directement sur la machine.
Le bonheur est dans le PC
Tapez une commande, n’importe laquelle pourvu que son utilisation nécessite des arguments. Invoquez-la sans ces derniers. Par exemple :
$ cp cp: missing file operand Try 'cp --help' for more information.
Prenons notre machine au pied de la lettre et faisons exactement ce qu’elle nous suggère de faire :
$ cp --help
Le shell nous affiche une liste assez longue d’options applicables à la commande cp
, ainsi qu’une série d’explications sur son fonctionnement.
Afficher le manuel en ligne : man
Les commandes Unix acceptent ainsi pour la plupart une option --help
(parfois aussi tout simplement -h
) affichant un écran d’aide succinct. En revanche, toutes les commandes (à très peu d’exceptions près) disposent d’un véritable manuel en ligne, que l’on peut afficher grâce à la commande man
suivie du nom de la commande sur laquelle on souhaite se renseigner :
$ man cp
L’affichage des pages de manuel s’effectue par le biais du visualiseur less
et ce sont les raccourcis clavier de ce dernier qui vous aident à naviguer (Espace pour avancer d’un écran, Q pour quitter et FlècheHaut, FlècheBas, PageHaut et PageBas pour avancer et reculer).
Notre installation minimale ne compte qu’un nombre réduit de pages man
. Invoquez la commande sudo dnf install -y man-pages
pour installer l’ensemble de la documentation en ligne sur votre système.
Comment lire une page man ?
Les pages de manuel en ligne (ou pages man
) sont toutes plus ou moins organisées de la même façon.
- Tout en haut de la page se trouve la commande, avec son numéro de chapitre, par exemple
CP(1)
. Traditionnellement, les pages de manuel sont organisées en huit sections distinctes, que nous n’allons pas toutes énumérer ici. Retenez seulement que certaines commandes intéressent les utilisateurs du système, alors que d’autres seront réservées à l’administrateur. Pour comprendre cette distinction, affichez la page du manuel decfdisk
(man cfdisk
), une commande qui sert à partitionner les disques durs. En haut de la page,CFDISK(8)
vous indique qu’il s’agit d’une page de manuel de la section8
et donc d’une commande réservée à l’administrateur du système. Les commandes des simples utilisateurs sont toutes regroupées dans la section1
. Certaines commandes disposent de leur page de manuel dans chaque section. Dans ce cas, il est nécessaire de spécifier le numéro de section pour les afficher séparément. À titre d’exemple, essayez successivementman 1 printf
etman 3 printf
. - L’en-tête intitulé
NAME
fournit une description succincte de la commande. - La section
SYNOPSIS
désigne la syntaxe de la commande, c’est-à-dire la façon dont il faut invoquer les options et les arguments. Ceux-ci peuvent être facultatifs ou obligatoires. DESCRIPTION
fournit une explication détaillée du fonctionnement de la commande.- La section
OPTIONS
affiche une liste exhaustive de toutes les options applicables à la commande, en les détaillant une par une. Pour comprendre de quoi il s’agit, affichez par exemple la page de manuel de la commandels
(man ls
) et essayez de retrouver les options qui vous sont déjà familières. - Plus loin, la section
BUGS
est quelque chose que vous chercherez en vain chez un éditeur de logiciels propriétaires. Si la commande a pu présenter une quelconque anomalie ou un quelconque dysfonctionnement dans le passé, cette section vous en informe. Voyez par exemple la page de manuel du shell Bash (man bash
) pour une telle section. SEE ALSO
vous renvoie d’une part vers une documentation plus détaillée (les pagesinfo
, que nous verrons tout à l’heure), d’autre part vers des commandes « cousines », c’est-à-dire en relation étroite. La page de manuel defdisk
vous renverra ainsi verscfdisk
,parted
etsfdisk
, trois autres commandes pour manipuler les tables de partitions sous Linux.- Les pages de manuel en ligne comportent également souvent une section
AUTHORS
avec des informations de contact sous forme d’adresse web ou de courrier électronique, ce qui permet de signaler d’éventuels bogues. Ne vous sentez pas trop concerné par ceci, du moins pas pour l’instant.
Recherche dans les pages du manuel
J’ai dit plus haut que les pages du manuel en ligne s’affichaient par le biais du visualiseur less
. Cela signifie que nous pouvons également nous servir des fonctions de recherche intégrées dans less
. Pour essayer ceci, cherchons par exemple toutes les occurrences du mot « modification » dans la page de manuel de ls
. Une fois que la page s’affiche, invoquez la fonctionnalité de recherche grâce à la barre oblique /
suivie de la chaîne de caractères modification
que vous souhaitez trouver dans le texte.
Certaines pages de manuel sont assez longues, et la fonction de recherche s’avérera utile pour trouver rapidement l’information qu’il vous faut.
Afficher le manuel en ligne : info
Dans certains cas, les renseignements fournis par la commande man
s’avèrent insuffisants. Essayez par exemple d’obtenir des informations sur l’interpréteur de commandes Bash en tapant man bash
. Vous obtenez alors une série de pages pour le moins cryptiques, qui ne vous sembleront probablement pas très parlantes.
Voici comment afficher un manuel bien plus complet :
$ info bash
À la différence d’une simple page man
, vous disposez ici d’un curseur. Celui-ci vous permet de naviguer de page en page, en suivant les liens. Une page info
est en fait une véritable arborescence de pages organisées de façon hiérarchique. Pour naviguer dans cette arborescence, il suffit de placer le curseur sur les bouts de texte compris entre une étoile *
et un deux-points :
. La touche Entrée vous conduit alors dans le nœud (Node
) correspondant. Pour revenir en arrière, utilisez la touche U (comme up, c’est-à-dire « remonter »). Là aussi, servez-vous du raccourci Q pour quitter la page info
.
Naviguer dans info
L’organisation d’une page info
est comparable au fonctionnement d’un site web. Les pages y sont organisées hiérarchiquement, le passage d’une page à l’autre se faisant par le biais d’hyperliens. Le bouton Page précédente du navigateur ramène en arrière.
À en juger par les commentaires des utilisateurs chevronnés de systèmes Unix dans les forums ou les listes de diffusion, les pages info
ont moins bonne presse que les pages man
, en raison de leur système de navigation quelque peu désuet et, surtout, de l’impossibilité de les mettre en forme, notamment pour en imprimer un extrait ou la totalité.
S’il ne fallait retenir que cela
Votre mémoire est une véritable passoire et vous oubliez sans cesse les commandes les plus basiques, au point de vous retrouver incapable d’utiliser l’aide en ligne ? Ce n’est pas bien grave. Retenez juste ceci :
$ man man
La même chose vaut pour l’utilisation des pages info
:
$ info info
Bien évidemment, il existe de nombreuses façons d’obtenir de l’aide pour votre système Linux :
- les sites de documentation
- les blogs
- les forums
- les listes de diffusion
- les newsgroups (ou groupes de discussion Usenet)
- les canaux IRC spécialisés
- la documentation spécifique à chaque distribution
Dans le monde Linux, ce n’est certainement pas la documentation qui fait défaut, mais il est parfois difficile de s’y retrouver. Pour l’instant, n’oubliez pas que l’aide la plus immédiate lorsque vous utilisez la ligne de commande se trouve à portée de doigts.
Pour aller plus loin
La meilleure adresse pour trouver de l’aide avec un système Rocky Linux est sans doute le forum anglophone du projet. Vous y trouverez une communauté sympathique d’administrateurs système, de développeurs et autres professionnels compétents, qui apporteront des réponses aux questions les plus pointues que vous pourrez leur poser. Je suis moi-même un utilisateur régulier de ce forum.
Lire la suite : Gérer les utilisateurs
La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.
1 commentaire
tTh · 2 septembre 2022 à 11 h 17 min
Il existe aussi le trop méconnu « pinfo » qui permet de lire à la fois les manpages et les infopages, avec dans les deux cas, une navigation aisée, un peu comme lynx.