Commandes UNIX
Les systèmes d'exploitation de type UNIX offrent à leurs utilisateurs des centaines de commandes qui font de la console un outil très pratique. Certaines d'entre elles sont fournies par le shell, alors que d'autres sont des exécutables situés dans /bin, /usr/bin,
/usr/local/bin ou un autre répertoire contenant des exécutables.
La distinction entre /bin et /usr/bin ne relève que de raisons historiques propres aux PDP/11 (/bin était placé sur un tambour
magnétique d'accès rapide et de petite taille, /usr/bin sur un disque normal; sur beaucoup de systèmes actuels, il s'agit d'un
lien vers le même système de fichiers.
Voici une liste des commandes les plus fréquemment incluses dans un système UNIX (donc aussi Linux). Certaines d'entre elles peuvent être spécifiques à un système en particulier, par exemple GNU. L'origine du nom des commandes est écrit entre parenthèses.
Plus d'informations sur chacune de ces commandes peuvent être trouvées dans leurs pages respectives du manuel UNIX.
Le passage d'arguments aux commandes
La plupart des commandes acceptent des arguments. On peut distinguer deux types d'arguments :
- Les options, qui sont en général précédées du caractère - pour leur forme courte ou des caractères
-- pour leur forme longue, introduite par les outils GNU.
Exemple :
ls -l --color
- Les chaînes de caractères, qui peuvent représenter un fichier, une expression régulière, une commande interne...
Exemple :
grep titi mon_fichier
cherche la chaîne titi dans le fichier mon_fichier. Une fonctionnalité puissante de certaines commande Unix est de pouvoir
rediriger la sortie d'une commande comme argument d'une autre.
Exemple :
ps ax | grep init
N'affichera que les lignes contenant init. Il s'agit ici d'une redirection utilisant grep comme filtre.
Aide
- apropos : Liste les pages de manuel contenant certains mots.
- info (GNU) : Obtenir le manuel GNU info d'une commande.
- apropos : Quelles sont les
rubriques d'aide traitant de...
- man : Obtenir le manuel d'une commande.
(MANual)
- help : Obtenir de l'aide pour une commande interne du shell.
- which : Où réside cette commande ?
- whatis : Liste quelles commandes sont en rapport avec un mot-clef.
- Commande --help : Affiche une aide succincte et liste les arguments qui peuvent être passés à la
Commande en question
Communications
- mesg : Contrôler l'accès à votre terminal par d'autres personnes (par write).
- talk : Faire une conversation avec un autre utilisateur du système.
- wall : Envoie un message à tous les utilisateurs du système (Write ALL).
- write : Envoie un message à un utilisateur (voir mesg).
Écran
- less (GNU) : Visualise le contenu d'un fichier texte, avec
une progression ligne par ligne ou page par page et la possibilité de retourner en arrière et d'effectuer une recherche ;
beaucoup plus élaboré que son prédécesseur more, less est son opposé (le nom de ce programme
comporte une touche d'humour car less signifie moins, alors que more signifie plus) ;
- more : Affiche le contenu d'un fichier texte, page par page (la page correspond à la taille du terminal) ;
- screen : Permet d'ouvrir des programmes associés à des écrans virtuels desquels l'utilisateur peut se détacher et
auxquels il peut de nouveau s'attacher plus tard.
- twin : Simule en mode texte (ncurses) un écran graphique.
Éditeurs de texte
- ed : Éditeur de texte (obsolète) orienté ligne. (EDitor)
- emacs : Éditeur de texte
- pico : Éditeur de texte
- vi : Éditeur de texte présent dans presque tous les systèmes Unix. (Visual Interface)
- vim : voir vi (VI aMélioré, ou VI iMproved).
[1]
Fichiers et répertoires
- cd : Change le répertoire courant. (Change Directory)
- cp : Copie un fichier. (CoPy)
- dd : Effectue une copie d'un fichier avec possibilité de conversion du format (Copy and Convert, mais
cc étant déjà pris, les lettres suivantes de l'alphabet ont été choisies).
- dir : Equivalent à ls (DIRectory)
- du : Affiche l'utilisation du disque. (Disk Usage)
- file : Affiche le type de fichier en lisant son en-tête.
- ls : Affiche la liste des fichiers dans le dossier courant. (LiSt)
- mkdir : Crée un ou plusieurs répertoires (MaKe DIRectory)
- mv : Déplace (ou renomme) un fichier, y compris si c'est un répertoire. (MoVe)
- pwd : Affiche le chemin du dossier courant. (Print Working Directory)
- rm : Supprime un fichier. (ReMove)
- rmdir : Supprime un ou ou plusieurs répertoires (ReMove DIRectory) s'ils est (s'ils sont) vide(s)
- touch : Change la date de modification d'un fichier, en le créant s'il n'existait pas.
Manipulations d'archives et compressions
- bzip2/bunzip2 : Compresse et décompresse des fichiers
- cpio : Copie de fichiers à partir de ou vers une archive cpio/tar (obsolète)
- gzip/gunzip : Compresse et décompresse des fichiers. (Gnu ZIPper)
- tar : Archiveur, capable de fonctionner avec bzip2 ou gzip. (Tape ARchiver)
- zip/unzip : Compresse et décompresse des fichiers. (ZIP)
Recherche
- find : Recherche récursive, à partir d'un répertoire, de fichiers ayant des caractéristiques données.
- locate : Recherche un fichier à partir
de la dernière version de la base de données des fichiers (base généralement créée par updatedb). Beaucoup plus rapide
que find, mais moins flexible.
- whereis : Recherche une commande dans le PATH et retourne le chemin des ou du dossiers dans lesquels elle se trouve.
- which : Retourne le chemin d'accès complet d'une commande.
Gestion des disques/points de montage
- df : Affiche l'espace libre sur les partitions (Disk Free)
- fsck : Effectue une vérification du système de fichiers (FileSystem ChecK)
- mkfs : Crée un système de fichiers. (MaKe FileSystem)
- mount : Attache un système de fichiers sur un point de montage.
- umount : Détache un système de
fichiers. (UnMOUNT). « unmount » reste autorisé.
Manipulation de texte
- awk : Effectue des opérations sur les fichiers (afficher une colonne, la traiter, ..) (initiales de ses créateurs :
Aho, Kernighan, Weinberger)
- cat : Concatène des fichiers texte. Peut aussi servir à simplement afficher ou lire un fichier.
(conCATenate)
- cut : Supprime une partie des lignes d'un fichier selon un critère.
- echo : Affiche une ligne de texte donnée en paramètre.
- expr : Évaluer une expression (mathématique ou sur une chaîne de caractères)
- grep : Affiche les lignes qui correspondent à une expression régulière donnée.
- head : Affiche les premières lignes d'un fichier. (opposé de tail)
- read : Lit une chaîne de caractères à partir de l'entrée standard.
- sed : Effectue des transformations sur un flux de texte (Stream EDitor)
- sort : Trie les lignes d'un texte selon l'ordre alphabétique (ou numérique avec l'option -n).
- strings : Affiche seulement les caractères imprimables (ASCII) d'un fichier
binaire.
- tail : Affiche les dernières lignes d'un fichier. (opposé de head)
- tee : Copie de l'entrée standard sur la sortie standard et vers un fichier. (le nom vient de la forme de la lettre T, qui a aussi une « entrée » et
deux « sorties »)
- tr : Transpose ou élimine des caractères dans une chaîne (TRanspose)
- uniq : Recopie un fichier source dans un fichier destination en ne conservant qu'un unique exemplaire de lignes
identiques consécutives.
Permissions
- chgrp : Change le groupe possesseur d'un fichier. (CHange GRouP)
- chmod : Change les permissions de qui peut lire, écrire, ou exécuter le fichier.
- chown : Change le possesseur d'un fichier. (CHange OWNer)
Processus
- free : Affiche des informations sur l'utilisation de la mémoire.
- fuser : Affiche quel processus utilise le fichier donné en paramètre.
- kill : Tue un processus, ou lui
envoie un signal donné.
- nice : Exécute une commande avec une priorité modifiée.
- pidof : Donne le PID du processus spécifié
- pkill : même commande que kill, mais par son nom au lieu de son numéro.
- ps : Affiche les processus en cours d'exécution (Process Status)
- pstree : Affiche l'arbre des processus en cours d'exécution.
- renice : Modifie la priorité d'un processus.
- top : Programme interactif qui affiche les processus les plus actifs selon un critère donné.
- xkill : Permet de killer une application lancée sous X
Shells
- bash (GNU) : Shell compatible sh de GNU (Bourne Again
SHell)
- sh : Shell standard (bourne SHell)
- csh : C-like shell; sa syntaxe de commandes est proche du langage C
- ksh : Korn SHell, le plus répandu parmi les UNIX commerciaux
- zsh : Z SHell
Services et démarrage
- dmesg : Affiche les messages apparus au démarrage du système et contrôle les tampons de messages du noyau.
- init : Change le niveau d'exécution (runlevel) du système.
- runlevel : Donne le niveau d'exécution en cours
- service : Démarre, arrête ou redémarre un service.
- who -r : Pareil que runlevel
Réseaux
- ftp : Client FTP en ligne de commande.
- hostname : Affiche ou modifie le nom d'hôte de la
machine.
- ifconfig : Configurer et afficher les paramètres d'une interface réseau
- irssi : Un client IRC en mode texte
- links : Navigateur web en mode texte
- lynx : Navigateur web en mode texte
- mail : Lire ou envoyer des courriels.
- ping : Effectue un ping sur une machine distante, utilise ICMP.
- route : Manipulation des tables de routage..
- sftp : Client FTP en mode sécurisé, appelé SFTP
- ssh : Client SSH (Secure SHell).
- rsh : Shell à distance (Remote SHell)
- traceroute : Trace la route vers une machine distante routeur par
routeur, en utilisant le protocole ICMP.
- whois : Informations sur les enregistrements de noms de domaine
- w3m : Encore un navigateur en mode texte
- wget : (Www GET) télécharge des fichiers via les protocoles HTTP, HTTPS et FTP.
Utilisateurs
- chfn : Modifie les informations finger de l'usager. (CHange FiNger)
- chsh : Modifie le shell par défaut de l'usager. (CHange SHell)
- groupadd : Ajoute un groupe d'utilisateurs.
- su : Commence un nouveau shell ou une autre commande en changeant l'utilisateur. (Super-User, Switch
User)
- sudo : Exécute un processus avec les droits d'un autre utilisateur selon les règles définies dans le fichier
/etc/sudoers
- useradd : Ajoute un utilisateur au système.
- visudo : Édite le fichier /etc/sudoers atomiquement, afin de donner des droits pour l'utilisation de la commande
sudo
- w : Affiche la liste des utilisateurs connectés et ce qu'ils sont en train de faire.
- who : Affiche la liste des utilisateurs connectés au système.
- whoami et who am i : Savoir sous quel nom d'utilisateur (ou d'administrateur) on est connecté (en anglais
Who am I?, « Qui suis-je ? ») ; whoami ne donne pas le même résultat que who am i si l'on est en cours
de substitution d'utilisateur (su). Avec
who am i, on obtient toujours l'identité de départ (par exemple, si l'utilisateur gandalf adopte l'identité de
root avec su, whoami retourne root tandis que who
am i renvoie bien gandalf).
Liens externes

