Commandes de base

man, help, apropos : Trouver de l'aide pour utiliser les commandes sous Linux

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Table des matières

Introduction



Il peut être utile de connaitre quelques astuces pour avoir de l'aide sur les commandes système.
L'aide fournie dans le système a l'avantage d'être à jour et consultable hors ligne !

help : l'aide succincte



En principe, une commande de base sur le système vous propose de l'aide, de manière très réduite en ajoutant l'option --help.
Avec cette option, une description brève de chaque option utilisable :

Exemple :
Code BASH :
free --help


Code TEXT :
Usage:
 free [options]
Options:
 -b, --bytes         afficher la sortie en octets
     --kilo          afficher la sortie en kilooctets
     --mega          afficher la sortie en mégaoctets
     --giga          afficher la sortie en gigaoctets
     --tera          afficher la sortie en téraoctets
     --peta          afficher la sortie en pétaoctets
 -k, --kibi          afficher la sortie en kibioctets
 -m, --mebi          afficher la sortie en mébioctets
 -g, --gibi          afficher la sortie en gibioctets
     --tebi          afficher la sortie en tébioctets
     --pebi          afficher la sortie en pébioctets
 -h, --human         afficher la sortie sous forme lisible par un humain
     --si            utiliser des puissances de 1000 au lieu de 1024
 -l, --lohi          afficher des statistiques détaillées pour les mémoires basse et haute
 -t, --total         afficher le total de la RAM + swap
 -s N, --seconds N   répéter l'affichage toutes les N secondes
 -c N, --count N     répéter l'affichage N fois puis termine
 -w, --wide          sortie large
     --help     afficher cette aide et termine
 -V, --version  affiche les informations de version et termine
Pour plus de détails, consultez free(1).


apropos : Trouvez des pages de manuel



La commande apropos, ne vous donnera pas d'aide, mais vous listera les pages de manuel disponibles sur le système, en fonction du nom de celles-ci ou de leur description.

Exemple de recherche pour des commandes en rapport avec la mémoire :
Code BASH :
apropos memory


Si on veut avoir le terme exact, on utilisera l'option -e :

Code BASH :
apropos -e ip


Voici un extrait :
Code TEXT :
ip (7)               - Implémentation Linux du protocole IPv4
ethers (5)           - Base de données adresses Ethernet - adresses IP
route (8)            - affiche / manipule la table de routage IP
avahi-resolve (1)    - Resolve one or more mDNS/DNS host name(s) to IP address(es) (and vice versa) using ...
avahi-resolve-address (1) - Resolve one or more mDNS/DNS host name(s) to IP address(es) (and vice versa) u...
avahi-resolve-host-name (1) - Resolve one or more mDNS/DNS host name(s) to IP address(es) (and vice versa)...
bindresvport (3)     - bind a socket to a privileged IP port
bindresvport (3t)    - bind a socket to a privileged IP port
CURLINFO_LOCAL_IP (3) - get local IP address of last connection
CURLINFO_PRIMARY_IP (3) - get IP address of last connection
CURLOPT_FTP_SKIP_PASV_IP (3) - ignore the IP address in the PASV response
CURLOPT_IPRESOLVE (3) - specify which IP protocol version to use
CURLOPT_RESOLVE (3)  - provide custom host name to IP address resolves
geoiplookup (1)      - look up country using IP Address or hostname
geoiplookup6 (1)     - look up country using IP Address or hostname
gethostip (1)        - convert an IP address into various formats
ifcfg (8)            - simplistic script which replaces ifconfig IP management
ip (8)               - show / manipulate routing, network devices, interfaces and tunnels
iptables-restore (8) - Restore IP Tables
iptraf-ng (8)        - Interactive Colorful IP LAN Monitor
logresolve (1)       - Resolve IP-addresses to hostnames in Apache log files
nmbd (8)             - NetBIOS name server to provide NetBIOS over IP naming services to clients
nmblookup (1)        - NetBIOS over TCP/IP client used to lookup NetBIOS names
resolveip (1)        - resolve host name to IP address or vice versa
 


man : Invoquez le manuel de la commande



La commande man va permettre de trouver un manuel complet d'une commande.

On y retrouvera :
- le nom de la commande
- le synopsis (comment on utilise la commande) - Notez que ce qui est entre crochet est facultatif
- la description
- la liste des options avec une explication complète
- éventuellement des exemples,
- ainsi que les fichiers associés.

On a également des liens vers d'autres pages de manuel en rapport avec celle-ci.

Exemple pour avoir la page de manuel de free :

Code BASH :
man free


Code TEXT :
FREE(1)                         User Commands                         FREE(1)
NAME
       free - Display amount of free and used memory in the system
SYNOPSIS
       free [options]
DESCRIPTION
       free displays the total amount of free and used physical and swap mem‐
       ory in the system, as well as the buffers and caches used by the  ker‐
       nel.  The  information  is gathered by parsing /proc/meminfo. The dis‐
       played columns are:
       total  Total installed memory (MemTotal and  SwapTotal  in  /proc/mem‐
              info)
       used   Used memory (calculated as total - free - buffers - cache)
       free   Unused memory (MemFree and SwapFree in /proc/meminfo)
       shared Memory used (mostly) by tmpfs (Shmem in /proc/meminfo)
       buffers
              Memory used by kernel buffers (Buffers in /proc/meminfo)
       cache  Memory  used  by  the  page  cache  and  slabs (Cached and SRe‐
              claimable in /proc/meminfo)
       buff/cache
              Sum of buffers and cache
       available
              Estimation of how much memory is available for starting new ap‐
              plications,  without  swapping. Unlike the data provided by the
              cache or free fields, this field takes into account page  cache
              and  also  that  not  all  reclaimable memory slabs will be re‐
              claimed due to items being in use (MemAvailable  in  /proc/mem‐
              info,  available  on kernels 3.14, emulated on kernels 2.6.27+,
              otherwise the same as free)
OPTIONS
       -b, --bytes
              Display the amount of memory in bytes.
       -k, --kibi
              Display the amount of memory in kibibytes.   This  is  the  de‐
              fault.
       -m, --mebi
              Display the amount of memory in mebibytes.
       -g, --gibi
              Display the amount of memory in gibibytes.
       --tebi Display the amount of memory in tebibytes.
       --pebi Display the amount of memory in pebibytes.
       --kilo Display the amount of memory in kilobytes. Implies --si.
       --mega Display the amount of memory in megabytes. Implies --si.
       --giga Display the amount of memory in gigabytes. Implies --si.
       --tera Display the amount of memory in terabytes. Implies --si.
       --peta Display the amount of memory in petabytes. Implies --si.
       -h, --human
              Show  all  output fields automatically scaled to shortest three
              digit unit and display the units of print out.  Following units
              are used.
                B = bytes
                Ki = kibibyte
                Mi = mebibyte
                Gi = gibibyte
                Ti = tebibyte
                Pi = pebibyte
              If  unit  is missing, and you have exbibyte of RAM or swap, the
              number is in tebibytes and columns might not  be  aligned  with
              header.
       -w, --wide
              Switch  to  the  wide mode. The wide mode produces lines longer
              than 80 characters. In this mode buffers and cache are reported
              in two separate columns.
       -c, --count count
              Display the result count times.  Requires the -s option.
       -l, --lohi
              Show detailed low and high memory statistics.
       -s, --seconds delay
              Continuously  display the result delay  seconds apart.  You may
              actually specify any floating point number for delay using  ei‐
              ther . or , for decimal point.  usleep(3) is used for microsec‐
              ond resolution delay times.
       --si   Use kilo, mega, giga etc (power of 1000) instead of kibi, mebi,
              gibi (power of 1024).
       -t, --total
              Display a line showing the column totals.
       --help Print help.
       -V, --version
              Display version information.
FILES
       /proc/meminfo
              memory information
BUGS
       The  value  for the shared column is not available from kernels before
       2.6.32 and is displayed as zero.
       Please send bug reports to
              ⟨[email protected]⟩
SEE ALSO
       ps(1), slabtop(1), top(1), vmstat(8).
procps-ng                         2018-05-31                          FREE(1)



Pour naviguer dans la page de manuel, on utilisera :
- Flèche haut et Flèche bas pour monter/descendre
- Page Down et Page Up pour avancer/reculer d'une page
- Espace pour passer page par page
- / suivi d'un mot clé permet de rechercher
- Si une recherche est faite n pour aller au mot suivant, N pour remonter
- q pour quitter la page de manuel

Globalement, ce sont les raccourcis de vi que vous pouvez utiliser pour naviguer !


Aller plus loin avec man



Rechercher par mot clé



Si vous cherchez une commande mais que vous ne connaissez pas le nom de celle-ci, plutôt que d'utiliser la commande apropos, vous pouvez rechercher avec un mot clé :

Code BASH :
man -k mot_clé


Exemple :

Code BASH :
man -k gz


Code :
argz_add (3)         - Fonctions pour manipuler les vecteurs argz
gzip (1)             - Compresser ou décompresser des fichiers
zforce (1)           - impose une extension « .gz » à tous les fichiers gzip
znew (1)             - Recompresser des fichiers .Z en des fichiers .gz
archive_read_filter (3) - functions for reading streaming archives
archive_write_filter (3) - functions enabling output filters
gzexe (1)            - compress executable files in place
pigz (1)             - compress or expand files



Ouvrir une autre page de manuel que celle par défaut



Prenons l'exemple de passwd.

Il existe 2 pages de manuel :

Code :
passwd (1)           - Modifier le mot de passe d'un utilisateur
passwd (5)           - fichier des mots de passe


passwd (1) fait référence à la commande passwd
passwd (5) fait référence au fichier des mots de passe ... /etc/passwd

Invoquer :

Code BASH :
man passwd


Va appeler passwd (1) et donc afficher la page de manuel de la commande.

Pour invoquer passwd (5) et avoir des renseignements sur le fichier de mot de passe, on utilisera :

Code BASH :
man 5 passwd





Ouvrir la page de manuel en Anglais



Si j'invoque la commande

Code BASH :
man find


La page de manuel est en français.

man cherche avec la langue définie par défaut sur le système (variable $LANG) .

On va donc invoquer la page man en redéfinissant la variable LANG avec la valeur C :

Code BASH :
LANG=C man find


La page de mauel est en anglais, telle qu'elle a été écrite originalement.