Agence web » Actualités du digital » Comment utiliser la commande man de Linux: secrets et bases cachés

Comment utiliser la commande man de Linux: secrets et bases cachés

Tout ce que vous devez savoir sur Linux se trouve dans ses pages de manuel. Par exemple, vous pouvez rechercher une commande pour accomplir une tâche, même si vous ne savez pas comment elle s’appelle. Mais comment trouver les pages de manuel? Voici quelques astuces.

Manuel intégré de Linux

Il y a une vieille blague Linux (de l'ère d'or Unix) que la seule commande que vous devez savoir est man, le point d'entrée du système vers le manuel de l'utilisateur. Il y a un peu de vérité là-dedans, mais même man peut être déroutant au début. Ou, plus précisément, trouver les informations dont vous avez besoin peut prêter à confusion.

Avez-vous déjà su ce que vous vouliez faire, mais vous ne connaissiez pas le nom de la commande qui accomplirait la tâche? Nous avons probablement tous été là. C’est comme essayer de rechercher un mot dans le dictionnaire lorsque vous ne le connaissez pas.

Alors, comment pouvez-vous trouver ce que vous cherchez? Eh bien, il existe des moyens de contourner ce dilemme avec man.

Les chiffres sont un autre problème de première année. Que sont-ils et que signifient-ils? Vous verrez des choses comme man(2) ou man(5) cité dans la documentation et sur Internet. Vous verrez également des références à des commandes suivies de chiffres, comme mount(2) et mount(8). Certes, il ne peut y en avoir plus d’un mount commande, non? Comme nous le verrons, les chiffres sont importants et relativement simples.

En parlant de simple, de recherche à l'intérieur man est assez facile une fois que vous savez comment le faire. En fait, il existe des façons intéressantes de rechercher et de naviguer dans man. Allumons-le et jetons un œil!

Comment ouvrir le manuel

Utiliser man, vous tapez man sur la ligne de commande, suivi d'un espace et d'une commande Linux. man ouvre le manuel Linux à la «page de manuel» qui décrit cette commande – si elle peut la trouver, bien sûr.

Tapons ce qui suit et voyons ce que man dit à propos de man:

man man

La page de manuel de man s'ouvre.

Comme vous pouvez le voir, c'est le man(1) page.

Suivez ces conseils pour naviguer sur la page:

  • Pour parcourir la page de manuel une ligne à la fois: Utilisez la molette de défilement de votre souris ou les flèches haut et bas et les touches Entrée.
  • Pour parcourir la page de manuel un écran à la fois: Appuyez sur la barre d'espace et sur les touches PgDn et PgUp.
  • Pour accéder directement au haut ou au bas de la page de manuel: Appuyez sur les touches Accueil et Fin.

Si vous appuyez sur H, vous accédez à la section d'aide et voyez un tableau de combinaisons de touches que vous pouvez utiliser. Ceux énumérés ci-dessus se sentiront probablement plus naturels pour la plupart des gens.

Pour quitter man, appuyez simplement sur Q.

L'anatomie d'un homme Page

En haut de la page, vous voyez les rubriques «Nom» et «Synopsis». La mise en page des pages de manuel est conventionnelle. Il existe des pages de manuel pour les commandes, les programmes et les fonctions de programmation (routines de bibliothèque). Vous ne verrez pas tous ces titres sur chaque page de manuel, car certains d'entre eux ne s'appliquent qu'à certains types de commandes.

Voici quelques titres que vous pourriez voir:

  • Nom: Nom de la commande décrite par la page de manuel.
  • Synopsis: Un résumé de la commande et de sa syntaxe.
  • Configuration: Détails de configuration pour un appareil.
  • La description: Une explication de ce que fait le programme.
  • Options: Une description des options de ligne de commande acceptées par la commande.
  • Statut de sortie: Valeurs possibles du statut de sortie de la commande et ce qui pourrait entraîner leur utilisation.
  • Valeur de retour: Si la page de manuel concerne une routine de bibliothèque, elle décrit la valeur que la routine de bibliothèque peut renvoyer à la fonction qui a appelé cette routine.
  • Les erreurs: Une liste des valeurs pouvant être placées dans errno en cas d'erreur.
  • Environnement: Une liste des variables d'environnement qui affectent la commande ou le programme, et de quelle manière.
  • Des dossiers: Une liste des fichiers utilisés par la commande ou le programme, tels que les fichiers de configuration.
  • Les attributs: Un résumé des différents attributs de la commande.
  • Versions: Détails des versions du noyau ou de la bibliothèque Linux où un appel système ou une fonction de bibliothèque est apparu ou a changé de manière significative par rapport aux versions précédentes.
  • Se conformer à: Une description de toutes les normes auxquelles la commande peut se conformer, telles que POSIX.
  • Remarques: Notes diverses.
  • Bugs: Problèmes connus.
  • Exemples: Un ou plusieurs exemples démontrant l'utilisation de la commande.
  • Auteurs: Les personnes qui ont écrit ou maintenu la commande.
  • Voir également: Lecture recommandée liée à la commande ou au sujet.

Les sections homme

Si vous faites défiler quelques pages, vous voyez une liste des sections du manuel.

Les sections sont:

  1. Commandes générales: Commandes que vous utilisez sur la ligne de commande.
  2. Appels système: Fonctions que le noyau fournit qu'un programme peut appeler.
  3. Fonctions de bibliothèque: Les programmes de fonctions peuvent appeler dans des bibliothèques de code (principalement le standard C).
  4. Fichiers spéciaux: Généralement, les périphériques, tels que ceux trouvés dans / dev, et leurs pilotes.
  5. Formats de fichier et conventions: Formats de fichiers, tels que passwd, cron table, et tar fichiers d'archives.
  6. Jeux: Descriptions des commandes, comme fortune, qui affichent les citations d'une base de données lorsque vous les exécutez.
  7. Divers: Descriptions de choses comme les inodes, les paramètres de démarrage et man lui-même.
  8. L'administration du système: Commandes et démons généralement réservés à root travailler avec.
  9. Routines du noyau: Informations relatives au fonctionnement interne du noyau. Cela inclut les interfaces de fonction et les variables utiles aux programmeurs qui écrivent des pilotes de périphérique, par exemple. Sur la plupart des systèmes, cette section n'est pas installée.

Lorsque vous voyez une commande suivie d'un nombre, cela fait référence à la description de cette commande dans cette section du manuel. Par exemple, man(1) fait référence à l'entrée de la première section du manuel décrivant man commander.

Dans l'image ci-dessus, vous voyez une référence à man(7). Cela signifie qu'il y a plus d'informations sur man dans une autre section. Lorsque nous avons ouvert la page de manuel pour la première fois, elle man(1). Si vous tapez uniquement man sans numéro de section, man recherche toutes les sections dans l'ordre, en recherchant une entrée pour la commande que vous avez tapée. Bien sûr, il a trouvé man(1) avant man(7).

Si vous voulez forcer man pour trouver une entrée dans une section spécifique, vous devez inclure le numéro de section sur la ligne de commande.

Par exemple, nous tapons ce qui suit pour ouvrir l'entrée pour man dans la section sept:

man 7 man

Le manuel s'ouvre sur l'entrée homme dans la section sept.

Cette page de manuel fournit des instructions pour la rédaction de pages de manuel. Il décrit le format de fichier et les macros que vous pouvez utiliser pour effectuer une partie du travail à votre place. le man(1) page dans la première section que nous avons examinée précédemment décrit comment utiliser man lui-même.

Comment rechercher des entrées dans les sections

Normalement, si vous voulez simplement savoir comment utiliser une commande, vous n'avez pas à donner de numéro de section. man trouvera l'entrée standard qui décrit comment utiliser cette commande dans la première section du manuel. Parfois, cependant, vous devez ouvrir une entrée de commande dans une section particulière car vous souhaitez des informations différentes.

Vous pouvez facilement savoir quelles sections du manuel contiennent des entrées pour une commande. Chaque page de manuel a un titre et une courte description. le -f (whatis) option recherche les titres des pages et renvoie une liste de correspondances.

Pour cet exemple, nous tapons ce qui suit:

man -f man

Les deux pages de manuel pour man sont répertoriés avec leurs numéros de section et de brèves descriptions. Attention cependant: certaines entrées portent le même nom, mais décrivent différentes commandes et fonctions.

Par exemple, nous tapons ce qui suit:

man -f printf

Il semble que deux entrées ont été trouvées pour printf: le premier dans la section un et un autre dans la section trois. Cependant, ce sont des commandes différentes. La page de manuel de la première section décrit la ligne de commande printf , qui formate la sortie dans la fenêtre du terminal. La page de manuel de la section trois décrit le printf famille de fonctions de bibliothèque dans le langage de programmation C.

Il est également possible de parcourir les courtes descriptions, ainsi que les titres des pages. Pour ce faire, vous utilisez le -k (apropos) option. Cela fera également correspondre les occurrences du terme de recherche à l'intérieur d'autres mots plus longs.

Nous tapons ce qui suit:

man -k printf

Beaucoup de ces commandes sont décrites dans les mêmes quelques pages de manuel car leur fonctionnalité principale est essentiellement la même. La page de manuel de vprintf décrit la fonctionnalité de 10 des commandes répertoriées dans l'image ci-dessus.

Vous pouvez tirer parti de cette fonctionnalité pour rechercher des informations relatives à ce que vous essayez de réaliser, même si vous ne connaissez pas le nom de la commande que vous souhaitez utiliser.

Supposons que vous souhaitiez modifier le mot de passe d'un compte utilisateur. Nous pouvons rechercher toutes les commandes qui mentionnent «utilisateur» dans les titres ou descriptions des pages de manuel. Nous pouvons ensuite le faire passer grep pour rechercher des entrées contenant «mot de passe».

Pour ce faire, nous tapons ce qui suit:

man -k 'user ' | grep password

Étant donné que nous avons placé le mot «utilisateur» entre guillemets simples et inclus un espace à la fin, il ne trouvera que des correspondances pour «utilisateur» et non «utilisateurs». Un rapide coup d'œil à travers les résultats de recherche nous montre que le candidat probable est passwd.

Comme il s'agit d'une page de manuel d'une section et que nous n'avons pas besoin d'inclure le numéro de section dans la commande, nous tapons ce qui suit:

man passwd

Disons que nous avons besoin d'une commande qui compte le nombre de mots dans un fichier texte. Nous tapons ce qui suit pour voir si quelque chose comme ça existe:

man -k word | grep count

Pour tout savoir sur le comptage des mots, nous tapons cette commande:

man wc

En parlant de wc, nous pouvons également utiliser le -k (apropos) option avec une seule période (.) comme cible de recherche, qui correspondra à tout. Si nous passons par là wc et utilisez le -l (lignes), il nous dira combien de pages de manuel il y a sur l'ordinateur.

Pour faire tout cela, nous tapons la commande suivante:

man -k . | wc -l

Il y a 6 706 pages de manuel sur cet ordinateur Ubuntu, mais ne soyez pas surpris si le nombre est différent sur le vôtre. Il peut varier en fonction des progiciels et des utilitaires que vous avez sur votre ordinateur et des pages de manuel préinstallées.

Page de recherche dans un homme

Vous pouvez également rechercher en avant ou en arrière à partir de votre position actuelle dans une page de manuel.

Pour cet exemple, nous tapons ce qui suit pour ouvrir la page de manuel du history commander:

man history

Pour rechercher en avant, nous appuyons sur la barre oblique (/), puis tapez le mot «événement». La cible de recherche apparaît en bas de la fenêtre du terminal, et nous appuyons sur Entrée pour lancer la recherche.

La fenêtre affiche le premier résultat de toutes les correspondances trouvées et elles sont mises en surbrillance.

Appuyez sur "n" pour passer d'un résultat à l'autre vers le bas de la page. Pour rechercher en arrière dans la page de manuel, appuyez sur «N»; cela vous ramènera en haut de la page.

Pour activer ou désactiver la mise en surbrillance, appuyez sur Echap + U.

Si vous êtes près du bas de la page de manuel et souhaitez effectuer une recherche vers le haut, appuyez sur le point d'interrogation (?), Puis saisissez le terme de recherche. Nous avons recherché «entrée».

Encore une fois, tous les résultats correspondants sont mis en évidence.

Pour rechercher le résultat correspondant suivant, appuyez sur "n" pour vous déplacer vers le début de la page de manuel. Appuyez sur "N" pour accéder au résultat de correspondance précédent et vous déplacer vers la fin de la page de manuel.

Il existe une autre façon de rechercher une page de manuel. Il masque toutes les lignes qui ne correspondent pas à votre terme de recherche. Il est donc préférable d'utiliser les numéros de ligne avec cette technique.

Si nous tapons «-N» et appuyons sur Entrée, nous pouvons voir les numéros de ligne dans la page de manuel.

Nous appuyons sur l'esperluette (&), saisissons notre terme de recherche (numéro), puis appuyons sur Entrée.

Seules les lignes contenant notre terme de recherche sont affichées.

Il est facile de les parcourir et de repérer ceux qui semblent intéressants. Nous pensons que la ligne 292 semble prometteuse, nous voulons donc aller à cette section de la page de manuel et la vérifier.

Pour revoir toutes les lignes, nous avons frappé l'esperluette (&), puis appuyez sur Entrée.

Nous tapons «292», puis «g» pour accéder à cette ligne.

Dès que nous tapons «g», nous sommes redirigés vers la ligne 292 (c'est pourquoi le «g» n'apparaît pas dans l'image ci-dessus). La ligne 292 s'affiche alors en haut de la fenêtre du terminal.

Vous pouvez appuyer sur "-n" et appuyer sur Entrée pour supprimer les numéros de ligne.

Lire le fabuleux manuel

Il y a une mine d'informations dans les pages de manuel. Même avec des commandes que vous pensez bien connaître, il y a fort à parier qu'il existe d'autres options dont vous n'avez jamais entendu parler.

Vous trouverez également des commandes dont vous ignoriez l'existence. Avec autant de façons différentes de rechercher et de retrouver des informations, c'est génial de tout avoir à portée de main.

★★★★★