Linux / Commandes essentielles : référence par tâche
Pour vous repérer dans les fichiers Linux, commencez par pwd, cd et ls ; pour rechercher du texte ou des fichiers, utilisez grep et find. Cette référence classe les commandes par tâche afin de choisir l’outil adapté, puis d’accéder à ses options et exemples détaillés.
Les options prises en charge par une même commande peuvent varier selon la distribution et les paquets installés. Sur un système réel, il est recommandé de vérifier la description de l'environnement actuel en utilisant man command ou command --help.
Les liens des commandes ouvrent leur guide en français lorsqu’il est disponible ; les autres renvoient provisoirement à l’article anglais.
Comment trouver des commandes Linux
Si vous ne connaissez pas la syntaxe exacte ou l'emplacement d'exécution d'une commande, essayez d'utiliser les commandes suivantes.
man ls
ls --help
type cd
command -v python
Dans man ls, appuyez sur q pour quitter le lecteur courant avant de saisir la commande suivante. type cd identifie une commande intégrée ; command -v python affiche ce que Bash résout sous ce nom, ou renvoie un statut non nul si le nom est introuvable. Ce test n’atteste pas à lui seul de la version de Python installée.
Commandes d'aide et de l'environnement shell
| Commande | Aperçu |
|---|---|
man |
Afficher les pages de manuel des commandes, des fichiers de configuration et des appels système. |
info |
Lire les documents détaillés Info des programmes GNU. |
help |
Afficher l'aide pour les commandes intégrées de Bash telles que cd et read. |
apropos |
Recherche des mots-clés dans la description du manuel pour trouver les commandes associées. |
whatis |
Affiche une brève description dans le manuel sur ce que fait une commande. |
type |
Vérifie si un nom est un alias, une fonction, une commande interne du shell ou un fichier exécutable. |
command |
Évite les conflits de noms avec les fonctions du shell lors de l'exécution d'une commande ou vérifie le lieu d'exécution avec -v. |
history |
Utilisé pour vérifier ou réexécuter l'historique des commandes précédemment exécutées dans le shell actuel. |
alias |
Attribue de courts alias aux commandes longues fréquemment utilisées. |
unalias |
Supprime les alias de commandes définis dans le shell actuel. |
clear |
Efface l'écran du terminal. |
watch |
Exécute à plusieurs reprises la commande spécifiée à intervalles réguliers pour observer les changements dans les résultats. |
time |
Mesure le temps d'exécution réel et le temps d’utilisation du processeur (CPU, Central Processing Unit) d'une commande. |
env |
Affiche les variables d'environnement ou exécute une commande avec des variables d'environnement temporaires. |
printenv |
Affiche les valeurs de toutes les variables d'environnement ou des variables d'environnement spécifiées. |
Navigation et informations sur les fichiers
| Commande | Aperçu |
|---|---|
pwd |
Affiche le chemin absolu du répertoire de travail actuel. |
ls |
Vérifie la liste des fichiers et des répertoires, les permissions, le propriétaire et la taille, etc. |
cd |
Change le répertoire de travail actuel pour un autre chemin. |
tree |
Afficher la structure des répertoires et des fichiers sous forme d'arborescence. Une installation peut être nécessaire séparément. |
file |
Estimer le type de fichier en inspectant le contenu du fichier au lieu de l'extension. |
stat |
Afficher la taille détaillée du fichier, les permissions, l'inode et les heures d'accès/modification. |
basename |
Extraire uniquement le dernier nom de fichier ou de répertoire d'un chemin complet. |
dirname |
Extraire le chemin du répertoire en excluant le dernier composant d'un chemin complet. |
realpath |
Afficher le chemin absolu en résolvant les chemins relatifs et les liens symboliques. |
readlink |
Vérifier le chemin cible auquel le lien symbolique pointe. |
Commandes de gestion des fichiers et des répertoires
| Commande | Aperçu |
|---|---|
touch |
Créer un fichier vide ou modifier les heures d'accès/modification d'un fichier existant. |
mkdir |
Créer un nouveau répertoire. |
rmdir |
Supprimer un répertoire vide. |
cp |
Copier des fichiers ou des répertoires vers un autre emplacement. |
mv |
Déplacer ou renommer des fichiers et des répertoires. |
rm |
Supprimer des fichiers ou des répertoires. La suppression ne va pas dans la corbeille, donc vérifiez attentivement la cible. |
ln |
Créer un lien physique ou un lien symbolique d'un fichier. |
install |
Copier un fichier tout en définissant le propriétaire, les permissions et le répertoire cible. |
shred |
Écraser le contenu d’un fichier ; la suppression du fichier demande -u. L’effacement complet n’est pas garanti avec les SSD, les instantanés, la copie à l’écriture ou les sauvegardes. |
mktemp |
Créer en toute sécurité des fichiers temporaires ou des répertoires temporaires qui évitent les conflits de noms. |
truncate |
Tronquer ou étendre un fichier à la taille spécifiée. |
dd |
Copier ou convertir des données par blocs. Si l'appareil cible est mal spécifié, des données peuvent être perdues. |
Commandes pour vérifier et rechercher le contenu des fichiers
| Commande | Aperçu |
|---|---|
cat |
Afficher le contenu d'un fichier ou concaténer plusieurs fichiers. |
tac |
Imprime dans l'ordre inverse à partir de la dernière ligne du fichier. |
less |
Lit de grands fichiers page par page tout en se déplaçant vers le haut et vers le bas et en recherchant. |
more |
Vérifie le contenu d'un fichier séquentiellement, écran par écran. |
head |
Vérifie la partie initiale d'un fichier ou la sortie d'une commande. |
tail |
Imprime la dernière partie d'un fichier, et avec l'option -f, vous pouvez surveiller continuellement les changements de journal. |
grep |
Trouve des lignes dans un fichier ou une sortie de commande qui correspondent à une chaîne ou à une expression régulière. |
find |
Recherche des fichiers dans un chemin spécifié en utilisant des conditions telles que le nom, le type, la taille, les permissions et la date de modification. |
locate |
Trouve rapidement des chemins en recherchant dans une base de données de fichiers pré-construite. |
which |
Trouve le chemin d'un programme qui sera exécuté à partir de PATH. type est plus adapté pour vérifier les alias ou les fonctions shell. |
whereis |
Recherche l'emplacement exécutable, la source et la page de manuel d'une commande. |
diff |
Compare les différences entre deux fichiers ou répertoires ligne par ligne. |
cmp |
Compare deux fichiers octet par octet pour trouver le premier emplacement différent. |
Commandes de traitement de texte
| Commande | Aperçu |
|---|---|
wc |
Compter les fins de ligne, les mots, les caractères ou les octets selon les options choisies. |
sort |
Trie les lignes de texte en fonction des caractères, des nombres ou des colonnes spécifiées. |
uniq |
Supprime les lignes dupliquées adjacentes ou compte le nombre de doublons. |
cut |
Extrait des champs de chaque ligne en fonction de la plage de caractères spécifiée ou du délimiteur. |
paste |
Combine horizontalement les lignes correspondantes de plusieurs fichiers. |
join |
Joint les lignes de deux fichiers texte triés en fonction des champs communs. |
comm |
Compare deux fichiers triés pour distinguer les lignes communes et les lignes uniques à chaque fichier. |
tr |
Remplace les caractères dans l'entrée par d'autres caractères ou supprime les caractères répétés et spécifiques. |
tee |
Afficher l'entrée à l'écran tout en l'enregistrant également dans un fichier. |
xargs |
Convertir les éléments reçus via l'entrée standard en arguments pour une autre commande et l'exécuter. |
sed |
Effectuer des opérations de recherche, remplacement, suppression et sélection de lignes dans un flux de texte. |
awk |
Analyser le texte par champ et calculer ou afficher selon des conditions. |
column |
Disposer le texte délimité dans un format de colonnes facile à lire. |
split |
Diviser de gros fichiers en plusieurs fichiers en fonction de la taille ou du nombre de lignes. |
csplit |
Diviser les fichiers en fonction des numéros de ligne ou des positions où apparaissent les motifs. |
fmt |
Réajuster la longueur des lignes de paragraphes de texte général pour les rendre plus faciles à lire. |
fold |
Divise les longues lignes d'entrée en plusieurs lignes selon une largeur spécifiée. |
printf |
Affiche les chaînes et les nombres dans un format spécifié. |
Commandes pour l'utilisateur et les permissions
| Commande | Aperçu |
|---|---|
whoami |
Affiche le nom de l'utilisateur exécutant la commande actuelle. |
id |
Vérifie l'ID utilisateur, le groupe par défaut et les informations des groupes supplémentaires. |
who |
Affiche les utilisateurs actuellement connectés au système et leurs terminaux de connexion. |
w |
Montre les utilisateurs connectés, les tâches en cours et la charge du système ensemble. |
last |
Vérifie les enregistrements de connexion et de déconnexion. |
groups |
Affiche les groupes auxquels l'utilisateur actuel ou spécifié appartient. |
passwd |
Change ou gère les mots de passe des utilisateurs. |
sudo |
Permet aux utilisateurs autorisés d'exécuter des commandes en tant qu'autres utilisateurs, généralement avec des privilèges root. |
su |
Exécuter un nouveau shell ou une commande avec l’identité d’un autre utilisateur ; exit permet de quitter le shell ainsi ouvert. |
chmod |
Modifier les permissions de lecture, écriture et exécution des fichiers et répertoires. |
chown |
Changer le propriétaire ou le groupe propriétaire des fichiers et répertoires. |
chgrp |
Changer le groupe propriétaire des fichiers et répertoires. |
umask |
Vérifier ou définir les valeurs de limite de permission par défaut qui seront appliquées aux nouveaux fichiers et répertoires. |
getent |
Interroger les bases de données du système de résolution des noms NSS (Name Service Switch), par exemple les utilisateurs, groupes et hôtes. |
Commandes de processus et de session de terminal
| Commande | Aperçu |
|---|---|
ps |
Vérifier l'ID, l'utilisateur, le statut et la commande d'exécution des processus en cours. |
top |
Vérifiez l'utilisation du CPU et de la mémoire par processus en temps réel. |
htop |
Afficher et gérer les processus dans un écran interactif. Une installation séparée peut être nécessaire. |
pgrep |
Rechercher les identifiants de processus par nom de processus et conditions. |
pkill |
Envoyer un signal aux processus correspondant au nom ou aux conditions. |
kill |
Envoyer un signal tel qu'une demande de terminaison en spécifiant un identifiant de processus. |
killall |
Envoyer un signal aux processus correspondant au nom spécifié. |
jobs |
Vérifiez les tâches en arrière-plan et arrêtées exécutées dans le shell actuel. |
bg |
Continuer l'exécution des tâches du shell arrêtées en arrière-plan. |
fg |
Ramène une tâche du shell en arrière-plan ou arrêtée au premier plan. |
nohup |
Lancer une commande en ignorant le signal de déconnexion SIGHUP. La mise en arrière-plan requiert une action distincte et la persistance dépend aussi de la gestion des sessions. |
nice |
Lancer une commande avec une valeur de courtoisie (niceness) modifiée, qui influence sa priorité d’ordonnancement normale. |
renice |
Modifier la valeur de courtoisie d’un processus existant, sous réserve des droits nécessaires. |
screen |
Crée plusieurs sessions virtuelles dans un seul terminal et permet de détacher et reconnecter. |
tmux |
Un multiplexeur de terminal qui gère plusieurs fenêtres et panneaux de shell, et permet de détacher et reconnecter des sessions. |
Commandes d'informations système et de service
| Commande | Aperçu |
|---|---|
uptime |
Vérifie le temps de fonctionnement du système, le nombre d'utilisateurs connectés et la charge moyenne. |
free |
Vérifie la capacité totale et l'état d'utilisation de la mémoire physique et de l'espace d'échange. |
uname |
Afficher des informations telles que la version du noyau actuellement en cours d'exécution et l'architecture matérielle. |
hostnamectl |
Dans un environnement systemd, vérifier le nom de l'hôte, la distribution, le noyau et les informations d'architecture ou définir le nom de l'hôte. |
date |
Afficher la date et l'heure actuelles ou les afficher dans un format spécifié. |
timedatectl |
Dans un environnement systemd, gérer l'heure, les fuseaux horaires et l'état de la synchronisation de l'heure réseau. |
lscpu |
Afficher l'architecture du CPU, les cœurs, les threads et les informations de virtualisation. |
lsmod |
Vérifier la liste des modules actuellement chargés dans le noyau et leur état d'utilisation. |
modinfo |
Vérifier l'emplacement du fichier, la description, la version et les paramètres des modules du noyau. |
dmesg |
Vérifiez les messages de démarrage, de matériel et de pilotes dans le tampon circulaire du noyau. |
systemctl |
Vérifiez l'état des services systemd et des autres unités, et démarrez, arrêtez ou activez-les. |
journalctl |
Consultez les journaux système et de services stockés dans le journal systemd. |
reboot |
Demander un redémarrage ordonné du système après vérification des tâches en cours et des autres utilisateurs. |
shutdown |
Planifiez un arrêt ou un redémarrage du système immédiatement ou à une heure spécifiée. |
Commandes de disque et de système de fichiers
| Commande | Aperçu |
|---|---|
df |
Vérifiez la capacité totale et l'espace disponible pour chaque système de fichiers monté. |
du |
Calculez l'utilisation du disque des fichiers et des répertoires. |
lsblk |
Vérifiez la hiérarchie des disques, partitions et volumes logiques, ainsi que leurs points de montage. |
blkid |
Interrogez l’identifiant universel unique (UUID), le type de système de fichiers et le label des périphériques de bloc. |
mount |
Monter un système de fichiers dans un répertoire spécifié ou vérifier l'état de montage actuel. |
umount |
Démonter un système de fichiers. Des fichiers ouverts ou un répertoire de travail situé dans le montage peuvent empêcher l’opération. |
fdisk |
Principalement vérifier ou modifier la table de partitions des disques, aux formats MBR (Master Boot Record) et GPT (GUID Partition Table). Vous devez vérifier le disque cible avant d'apporter des modifications. |
parted |
Créer des partitions sur diverses tables de partitions et gérer leur taille et leur emplacement. |
mkfs |
Créer un nouveau système de fichiers sur une partition ou un périphérique. Les données existantes peuvent être perdues. |
fsck |
Vérifier, et selon l’outil réparer, un système de fichiers pris en charge. Suivre les conditions de son vérificateur ; ne pas lancer une réparation sur un système de fichiers monté. |
sync |
Demande que les données du système de fichiers restant en mémoire soient écrites sur le périphérique de stockage. |
Commandes réseau
| Commande | Aperçu |
|---|---|
ip |
Vérifie ou configure les interfaces réseau, les adresses du protocole Internet (IP), le routage et les tables de voisins. |
ss |
Vérifie les sockets TCP (Transmission Control Protocol) et UDP (User Datagram Protocol), les ports d’écoute et l'état des connexions. |
ping |
Envoie des paquets du protocole de contrôle ICMP (Internet Control Message Protocol) pour vérifier si l'hôte cible répond et mesure le temps aller-retour. |
tracepath |
Examine le chemin réseau et l'unité de transmission maximale (MTU) vers la destination. |
traceroute |
Trace le chemin des routeurs que prennent les paquets pour atteindre la destination. |
dig |
Interroge les enregistrements du système de noms de domaine DNS (Domain Name System) et examine les réponses en détail. |
host |
Interroge brièvement les informations DNS pour les noms de domaine et les adresses IP. |
nslookup |
Interroge les informations de domaine ou d'adresse IP sur un serveur DNS. |
curl |
Demander ou envoyer des données en utilisant divers protocoles tels que HTTP (Hypertext Transfer Protocol) via une adresse URL (Uniform Resource Locator). |
wget |
Télécharger des fichiers à partir d'adresses web et FTP et effectuer des téléchargements récursifs. |
nc |
Utiliser Netcat pour effectuer des connexions TCP/UDP, vérifier les ports et transférer des données simples. |
nmap |
Examiner les hôtes, les ports ouverts et les informations de service des cibles autorisées. |
ethtool |
Vérifier la vitesse de connexion, le pilote et les paramètres de fonctionnalités d'une interface Ethernet. |
resolvectl |
Vérifier les paramètres DNS et l'état des requêtes dans un environnement systemd-resolved. |
Commandes d'accès à distance et de transfert de fichiers
| Commande | Aperçu |
|---|---|
ssh |
Se connecter à un système distant ou y exécuter une commande via le protocole chiffré SSH (Secure Shell). |
scp |
Copier des fichiers entre les systèmes locaux et distants en utilisant une connexion SSH. |
sftp |
Utilisez une session de transfert de fichiers interactive basée sur SSH. |
rsync |
Synchronisez efficacement des répertoires locaux ou distants en vous concentrant sur les fichiers modifiés. |
ssh-keygen |
Créez des paires de clés publiques et privées SSH et gérez les empreintes de clés. |
ssh-copy-id |
Ajoutez une clé publique à la liste des clés autorisées d'un compte distant. |
Commandes de compression et d'archivage
| Commande | Aperçu |
|---|---|
tar |
Combinez ou extrayez plusieurs fichiers et répertoires dans une seule archive, et utilisez-la avec des outils de compression. |
gzip |
Compressez les fichiers au format gzip. |
gunzip |
Décompresser un fichier au format gzip. |
bzip2 |
Compressez les fichiers au format bzip2. |
bunzip2 |
Décompresser un fichier au format bzip2. |
xz |
Compressez les fichiers au format xz. |
unxz |
Décompresser un fichier au format xz. |
zip |
Compresser des fichiers et des répertoires au format ZIP. |
unzip |
Vérifier la liste d'une archive ZIP ou l'extraire. |
Commandes de gestion des paquets
Les commandes de gestion des paquets varient selon la distribution. Vous devriez vérifier la distribution actuelle avec cat /etc/os-release et utiliser l'outil approprié.
| Commande | Aperçu |
|---|---|
apt |
Commandes utilisateur utilisées dans les systèmes Debian/Ubuntu pour rechercher, installer, supprimer et mettre à jour des paquets. |
apt-get |
Commandes APT largement utilisées dans les systèmes Debian/Ubuntu pour les scripts et les opérations détaillées sur les paquets. |
dpkg |
Effectue l'installation locale de paquets DEB et les requêtes sur la base de données des paquets sur les systèmes basés sur Debian. |
dnf |
Gère les paquets et les dépôts sur les systèmes Fedora/RHEL/Rocky Linux/AlmaLinux. |
rpm |
Interroge ou gère les fichiers de paquets RPM et la base de données des paquets installés. |
zypper |
Gérer les paquets et les dépôts sur openSUSE et SUSE Linux Enterprise. |
pacman |
Installer et supprimer des paquets et mettre à jour le système sur les distributions basées sur Arch Linux. |
apk |
Rechercher, installer, supprimer des paquets et actualiser les informations des dépôts sur Alpine Linux. |
Points à vérifier lors de l'utilisation des commandes
- Pour les commandes qui modifient ou suppriment des données, comme
rm,dd,mkfs,fdisk, vérifier d'abord le chemin et le périphérique cible. - N'utilisez
sudoque pour les commandes nécessaires et n'exécutez pas de commandes en tant qu'administrateur si vous ne les comprenez pas. - Vérifiez avec
manet--helpsi les options trouvées sur internet existent sur votre système actuel. - Les commandes ou options peuvent ne pas exister selon la distribution, la version du programme et les paquets installés.
Documentation officielle
- Manuel officiel des GNU Coreutils
- Manuel officiel de GNU Bash
- Projet des pages man de Linux
- Source du manuel officiel de systemd
Cette liste est un point de départ pour trouver rapidement des commandes. Dans l'utilisation réelle, il est plus sûr de vérifier la syntaxe de base de chaque commande, les options couramment utilisées, les exemples d'exécution et les précautions avant de l'utiliser.




