Au moment où nous écrivons ces lignes, Linux a une part de marché mondiale de 2,68 % sur les ordinateurs de bureau, mais plus de 90 % de tous les services d’infrastructure et d’hébergement dans le cloud fonctionnent avec ce système d’exploitation. Pour cette seule raison, il est crucial de connaître les commandes Linux les plus courantes.
Selon l’enquête StackOverflow, Linux est le système d’exploitation le plus utilisé par les développeurs professionnels, avec une part de marché impressionnante de 55,9 %. Ce n’est pas une simple coïncidence. Linux est gratuit et open-source, offre une meilleure sécurité que ses concurrents et dispose d’une ligne de commande puissante qui rend les développeurs et les utilisateurs puissants plus efficaces. Vous avez également accès à un puissant gestionnaire de paquets et à une foule d’outils de développement comme DevKinsta.
Que vous soyez un administrateur système expérimenté ou un nouveau venu dans le monde de Linux, vous pouvez tirer parti de ce guide.
C’est parti !
Qu’est-ce qu’une commande Linux ?
Une commande Linux est un programme ou un utilitaire qui s’exécute en ligne de commande. Une ligne de commande est une interface qui accepte des lignes de texte et les traite en instructions pour votre ordinateur.
Toute interface utilisateur graphique (GUI) n’est qu’une abstraction des programmes en ligne de commande. Par exemple, lorsque vous fermez une fenêtre en cliquant sur le « X », une commande est exécutée derrière cette action.
Un flag est un moyen de passer des options à la commande que vous exécutez. La plupart des commandes Linux ont une page d’aide que l’on peut appeler avec le flag -h
. La plupart du temps, les flags sont optionnels.
Un argument ou paramètre est l’entrée que nous donnons à une commande pour qu’elle puisse s’exécuter correctement. Dans la plupart des cas, l’argument est un chemin d’accès à un fichier, mais il peut s’agir de tout ce que vous saisissez dans le terminal.
Vous pouvez invoquer des flags en utilisant des tirets (-
) et des doubles tirets (--
), tandis que l’exécution des arguments dépend de l’ordre dans lequel vous les passez à la fonction.
Les 40 commandes Linux les plus utilisées
Avant de passer aux commandes Linux les plus utilisées, assurez-vous de lancer un terminal. Dans la plupart des distributions Linux, vous utiliserez Ctrl + Alt + T pour le faire. Si cela ne fonctionne pas, recherchez « terminal » dans votre panneau d’applications.
Nous allons maintenant nous plonger dans les 40 commandes Linux les plus utilisées. Beaucoup d’entre elles ont plusieurs options que vous pouvez enchaîner, alors assurez-vous de consulter le manuel des commandes.
1. Commande ls
ls
est probablement la première commande que tout utilisateur de Linux saisit dans son terminal. Elle vous permet de lister le contenu du répertoire que vous souhaitez (le répertoire courant par défaut), y compris les fichiers et autres répertoires imbriqués.
ls
Elle possède de nombreuses options, il peut donc être utile d’obtenir de l’aide en utilisant l’option --help
. Cette option renvoie toutes les options que vous pouvez utiliser avec ls.
Par exemple, pour coloriser la sortie de la commande ls
, vous pouvez utiliser ce qui suit :
ls --color=auto
Maintenant la sortie de la commande ls
est colorisée, et vous pouvez apprécier la différence entre un répertoire et un fichier.
Mais saisir ls
avec le flag color serait inefficace ; c’est pourquoi nous utilisons la commande alias
.
2. Commande alias
La commande alias
vous permet de définir des alias temporaires dans votre session shell. En créant un alias, vous demandez à votre shell de remplacer un mot par une série de commandes.
Par exemple, pour que ls
ait une couleur sans avoir à taper le flag --color
à chaque fois, vous pouvez utiliser :
alias ls="ls --color=auto"
Comme vous pouvez le voir, la commande alias
prend un paramètre de paire clé-valeur : alias NAME="VALUE"
. Notez que la valeur doit être entre guillemets.
Si vous voulez lister tous les alias que vous avez dans votre session shell, vous pouvez exécuter la commande alias
sans argument.
alias
3. Commande unalias
Comme son nom l’indique, la commande unalias
vise à supprimer un alias parmi les alias
déjà définis. Pour supprimer l’alias précédent ls
, vous pouvez utiliser :
unalias ls
4. Commande pwd
La commande pwd
signifie « print working directory » (afficher le répertoire de travail) et donne le chemin absolu du répertoire dans lequel vous vous trouvez. Par exemple, si votre nom d’utilisateur est « john » et que vous vous trouvez dans votre répertoire Documents, son chemin absolu sera le suivant : /home/john/Documents
.
Pour l’utiliser, il suffit de saisir pwd
dans le terminal :
pwd
# My result: /home/kinsta/Documents/linux-commands
5. Commande cd
La commande cd
est très populaire, tout comme ls
. Elle signifie « Change Directory » et, comme son nom l’indique, vous fait passer au répertoire auquel vous essayez d’accéder.
Par exemple, si vous êtes dans votre répertoire Documents et que vous essayez d’accéder à l’un de ses sous-répertoires appelé Videos, vous pouvez y accéder en saisissant :
cd Videos
Vous pouvez également fournir le chemin absolu du répertoire :
cd /home/kinsta/Documents/Videos
Il existe quelques astuces avec la commande cd
qui peuvent vous faire gagner beaucoup de temps lorsque vous jouez avec elle :
1. Aller dans le répertoire home
cd
2. Monter d’un niveau
cd ..
3. Retourner au répertoire précédent
cd -
6. Commande cp
Il est si facile de copier des fichiers et des répertoires directement dans le terminal Linux qu’il peut parfois remplacer les gestionnaires de fichiers conventionnels.
Pour utiliser la commande cp
, il suffit de la saisir avec les fichiers source et destination :
cp file_to_copy.txt new_file.txt
Vous pouvez également copier des répertoires entiers en utilisant le flag récursif :
cp -r dir_to_copy/ new_copy_dir/
Rappelez-vous que sous Linux, les répertoires se terminent par une barre oblique (/
).
7. Commande rm
Maintenant que vous savez comment copier des fichiers, il est utile de savoir comment les supprimer.
Vous pouvez utiliser la commande rm
pour supprimer des fichiers et des répertoires. Faites cependant attention lorsque vous l’utilisez, car il est très difficile (mais pas impossible) de récupérer des fichiers supprimés de cette façon.
Pour supprimer un fichier ordinaire, il faut saisir :
rm file_to_copy.txt
Si vous voulez supprimer un répertoire vide, vous pouvez utiliser le flag récursif (-r
) :
rm -r dir_to_remove/
D’autre part, pour supprimer un répertoire avec son contenu, vous devez utiliser les flags force (-f) et recursif :
rm -rf dir_with_content_to_remove/
8. Commande mv
Vous utilisez la commande mv
pour déplacer (ou renommer) des fichiers et des répertoires dans votre système de fichiers.
Pour utiliser cette commande, il faut saisir son nom avec les fichiers source et destination :
mv source_file destination_folder/
mv command_list.txt commands/
Pour utiliser des chemins absolus, il faut utiliser :
mv /home/kinsta/BestMoviesOfAllTime ./
…où ./
est le répertoire dans lequel vous vous trouvez actuellement.
Vous pouvez également utiliser mv
pour renommer des fichiers tout en les conservant dans le même répertoire :
mv old_file.txt new_named_file.txt
9. Commande mkdir
Pour créer des répertoires dans le shell, vous utilisez la commande mkdir
. Il suffit de spécifier le nom du nouveau répertoire, de s’assurer qu’il n’existe pas, et le tour est joué.
Par exemple, pour créer un répertoire dans lequel vous conserverez toutes vos images, saisissez simplement
mkdir images/
Pour créer des sous-répertoires avec une simple commande, utilisez l’option parent (-p
) :
mkdir -p movies/2004/
10. Commande man
Une autre commande Linux essentielle est man
. Elle affiche la page de manuel de n’importe quelle autre commande (pour autant qu’elle en ait une).
Pour voir la page de manuel de la commande mkdir
, saisissez :
man mkdir
Vous pouvez même vous référer à la page de manuel man
:
man man
11. Commande touch
La commande touch
vous permet de mettre à jour les temps d’accès et de modification des fichiers spécifiés.
Par exemple, j’ai un vieux fichier qui a été modifié pour la dernière fois le 12 avril :
Pour changer sa date de modification à l’heure actuelle, nous devons utiliser l’option -m
:
touch -m old_file
La date correspond maintenant à la date d’aujourd’hui (qui, au moment de la rédaction de cet article, était le 8 août).
Néanmoins, la plupart du temps, vous n’utiliserez pas touch
pour modifier les dates des fichiers, mais plutôt pour créer de nouveaux fichiers vides :
touch new_file_name
12. Commande chmod
La commande chmod
vous permet de modifier rapidement le mode d’un fichier (permissions). Elle dispose d’un grand nombre d’options.
Les autorisations de base qu’un fichier peut avoir sont les suivantes :
- r (lire)
- w (écrire)
- x (exécuter)
L’un des cas d’utilisation les plus courants de chmod
est de rendre un fichier exécutable par l’utilisateur. Pour ce faire, saisissez chmod
et le flag +x
, suivi du fichier dont vous voulez modifier les permissions :
chmod +x script
Vous l’utilisez pour rendre les scripts exécutables, ce qui vous permet de les exécuter directement en utilisant la notation ./
.
13. Command ./
La notation ./
n’est peut-être pas une commande en soi, mais elle mérite d’être mentionnée dans cette liste. Elle permet à votre shell d’exécuter un fichier exécutable avec n’importe quel interpréteur installé sur votre système directement depuis le terminal. Plus besoin de double-cliquer sur un fichier dans un gestionnaire graphique de fichiers !
Par exemple, avec cette commande, vous pouvez exécuter un script Python ou un programme disponible uniquement au format .run, comme XAMPP. Lorsque vous exécutez un exécutable, assurez-vous qu’il dispose des droits d’exécution (x), que vous pouvez modifier avec la commande chmod
.
Voici un script Python simple et la façon dont nous l’exécuterions avec la notation ./
:
#! /usr/bin/python3
# filename: script
for i in range(20):
print(f"This is a cool script {i}")
Voici comment convertir le script en un exécutable et l’exécuter :
chmod +x script
./script
14. Commande exit
La commande exit
fait exactement ce que son nom suggère : Elle permet de mettre fin à une session du shell et, dans la plupart des cas, de fermer automatiquement le terminal que vous utilisez :
exit
15. Commande sudo
Cette commande signifie « superuser do » et vous permet d’agir en tant que super-utilisateur ou utilisateur root pendant l’exécution d’une commande spécifique. C’est ainsi que Linux se protège et empêche les utilisateurs de modifier accidentellement le système de fichiers de la machine ou d’installer des paquets inappropriés.
Sudo est couramment utilisé pour installer des logiciels ou pour modifier des fichiers en dehors du répertoire personnel de l’utilisateur :
sudo apt install gimp
sudo cd
/root/
Il vous demandera le mot de passe de l’administrateur avant d’exécuter la commande que vous avez saisi.
16. Commande shutdown
Comme vous pouvez le deviner, la commande shutdown
permet d’éteindre votre machine. Cependant, elle peut également être utilisée pour l’arrêter et le redémarrer.
Pour mettre votre ordinateur hors tension immédiatement (la valeur par défaut est d’une minute), saisissez :
shutdown now
Vous pouvez également planifier l’extinction de votre système en format 24 heures :
shutdown 20:40
Pour annuler un appel shutdown
précédent, vous pouvez utiliser le flag -c
:
shutdown -c
17. Commande htop
htop
est un visualisateur de processus interactif qui vous permet de gérer les ressources de votre machine directement depuis le terminal. Dans la plupart des cas, il n’est pas installé par défaut, alors assurez-vous d’en lire plus sur sa page de téléchargement.
htop
18. Commande unzip
La commande unzip vous permet d’extraire le contenu d’un fichier .zip à partir du terminal. Encore une fois, ce paquet peut ne pas être installé par défaut, alors assurez-vous de l’installer avec votre gestionnaire de paquets.
Ici, nous décompressons un fichier .zip rempli d’images :
unzip images.zip
19. Commandes apt
, yum
, pacman
Quelle que soit la distribution Linux que vous utilisez, il est probable que vous utilisiez des gestionnaires de paquets pour installer, mettre à jour et supprimer les logiciels que vous utilisez tous les jours.
Vous pouvez accéder à ces gestionnaires de paquets par la ligne de commande, et vous utiliserez l’un ou l’autre en fonction de la distribution utilisée par votre machine.
Les exemples suivants vont installer GIMP, un logiciel libre et gratuit généralement disponible dans la plupart des gestionnaires de paquets :
Basé sur Debian (Ubuntu, Linux Mint)
sudo apt install gimp
Basé sur Red Hat (Fedora, CentOS)
sudo yum install gimp
Basé sur Arch (Manjaro, Arco Linux)
sudo pacman -S gimp
20. Commande echo
La commande echo
affiche un texte défini dans le terminal – c’est aussi simple que cela :
echo "Cool message"
Son utilisation principale est d’afficher les variables environnementales dans ces messages :
echo "Hey $USER"
# Hey kinsta
21. Commande cat
Cat
, abréviation de « concatenate », vous permet de créer, d’afficher et de concaténer des fichiers directement depuis le terminal. Il est principalement utilisé pour prévisualiser un fichier sans ouvrir un éditeur de texte graphique :
cat long_text_file.txt
22. Commande ps
Avec ps
, vous pouvez jeter un coup d’œil aux processus que votre session shell actuelle exécute. Elle affiche des informations utiles sur les programmes que vous exécutez, comme l’ID du processus, le TTY (téléscripteur), l’heure et le nom de la commande.
ps
Si vous voulez quelque chose de plus interactif, vous pouvez utiliser htop
.
23. Commande kill
C’est ennuyeux lorsqu’un programme ne répond pas, et que vous ne pouvez pas le fermer par quelque moyen que ce soit. Heureusement, la commande kill
résout ce genre de problème.
En termes simples, kill
envoie un signal TERM ou kill à un processus pour le terminer.
Vous pouvez stopper les processus en saisissant soit le PID (identifiant du processus), soit le nom binaire du programme :
kill 533494
kill firefox
Faites attention avec cette commande – avec kill
, vous courez le risque d’effacer accidentellement le travail que vous avez effectué.
24. Commande ping
ping
est l’utilitaire de terminal réseau le plus populaire, utilisé pour tester la connectivité du réseau. ping
dispose d’une tonne d’options, mais dans la plupart des cas, vous l’utiliserez pour demander un domaine ou une adresse IP :
ping google.com
ping 8.8.8.8
25. Commande vim
vim
est un éditeur de texte libre et open source utilisé depuis les années 90. Il vous permet de modifier des fichiers de texte brut en utilisant des raccourcis clavier efficaces.
Certains le considèrent comme difficile à utiliser – quitter Vim est l’une des questions les plus consultées sur StackOverflow – mais une fois que vous vous y êtes habitué, il devient votre meilleur allié en ligne de commande.
Pour lancer Vim, il suffit de saisir :
vim
26. Commande history
Si vous avez du mal à vous souvenir d’une commande, history
est très utile. Cette commande affiche une liste numérotée des commandes utilisées dans le passé :
history
27. Commande passwd
passwd
vous permet de changer les mots de passe des comptes utilisateurs. Tout d’abord, elle vous invite à saisir votre mot de passe actuel, puis vous demande un nouveau mot de passe et une confirmation.
Le processus est similaire à tout autre changement de mot de passe que vous avez vu ailleurs, mais dans ce cas, cela se fait directement dans votre terminal :
passwd
Faites attention en l’utilisant – vous ne voulez pas perdre votre mot de passe !
28. Command which
La commande which
produit le chemin complet des commandes du shell. Si elle ne peut pas reconnaître la commande donnée, elle lancera une erreur.
Par exemple, nous pouvons l’utiliser pour vérifier le chemin binaire de Python et du navigateur web Brave :
which python
# /usr/bin/python
which brave
# /usr/bin/brave
29. Commande shred
Si vous avez toujours voulu qu’un fichier soit presque impossible à récupérer, shred
peut vous aider dans cette tâche. Cette commande remplace le contenu d’un fichier de manière répétée, et par conséquent, le fichier donné devient extrêmement difficile à récupérer.
Voici un fichier avec peu de contenu :
Maintenant, laissons shred
faire son travail en saisissant la commande suivante :
shred file_to_shred.txt
Si vous voulez supprimer le fichier immédiatement, vous pouvez utiliser l’option -u
:
shred -u file_to_shred.txt
30. Command less
less
(contraire de more) est un programme qui vous permet d’inspecter les fichiers en avant et en arrière :
less large_text_file.txt
La particularité de less est qu’elle inclut less
commandes more et vim
dans son interface. Si vous avez besoin de quelque chose de plus interactif que cat
, less
est une bonne option.
31. Commande tail
Semblable à cat
, tail
affiche le contenu d’un fichier avec une réserve majeure : elle n’affiche que les dernières lignes. Par défaut, elle affiche les 10 dernières lignes, mais vous pouvez modifier ce nombre avec -n
.
Par exemple, pour afficher les dernières lignes d’un grand fichier texte, vous utiliserez :
tail long.txt
Pour afficher uniquement les quatre dernières lignes :
tail -n 4 long.txt
32. Commande head
Celle-ci est complémentaire de la commande tail
. head
affiche les 10 premières lignes d’un fichier texte, mais vous pouvez définir le nombre de lignes que vous souhaitez afficher avec l’option -n
:
head long.txt
head -n 5 long.txt
33. Commande grep
Grep est l’un des utilitaires les plus puissants pour travailler avec des fichiers texte. Il recherche les lignes qui correspondent à une expression régulière et les affiche :
grep "linux" long.txt
Vous pouvez compter le nombre de fois que le terme se répète en utilisant le flag -c
:
grep -c "linux" long.txt
# 2
34. Commande whoami
La commande whoami
(abréviation de « who am i ») affiche le nom d’utilisateur actuellement utilisé :
whoami
# kinsta
Vous obtiendriez le même résultat en utilisant echo
et la variable environnementale $USER :
echo $USER
# kinsta
35. Commande whatis
whatis
affiche une description d’une seule ligne de toute autre commande, ce qui en fait une référence utile :
whatis python
# python (1) - an interpreted, interactive, object-oriented programming language
whatis whatis
# whatis (1) - display one-line manual page descriptions
36. Commande wc
Wc signifie « word count », et comme son nom l’indique, il renvoie le nombre de mots dans un fichier texte :
wc long.txt
# 37 207 1000 long.txt
Analysons le résultat de cette commande :
- 37 lignes
- 207 mots
- Taille de 1000 octets
- Nom du fichier (long.txt)
Si vous avez seulement besoin du nombre de mots, utilisez le flag -w
:
wc -w long.txt
207 long.txt
37. Commande uname
uname
(abréviation de « Unix name ») affiche les informations du systèmed’exploitation, ce qui est pratique lorsque vous connaissez la version actuelle de Linux.
La plupart du temps, vous utiliserez l’option -a
(–all), car la sortie par défaut n’est pas très utile :
uname
# Linux
uname -a
# Linux kinstamanjaro 5.4.138-1-MANJARO #1 SMP PREEMPT Thu Aug 5 12:15:21 UTC 2021 x86_64 GNU/Linux
38. Commande neofetch
Neofetch est un outil CLI (interface de ligne de commande) qui affiche des informations sur votre système – comme la version du noyau, le shell et le matériel – à côté d’un logo ASCII de votre distribution Linux :
neofetch
Dans la plupart des machines, cette commande n’est pas disponible par défaut, assurez-vous donc de l’installer d’abord avec votre gestionnaire de paquets.
39. Commande find
La commande find
recherche des fichiers dans une hiérarchie de répertoires en se basant sur une expression regex. Pour l’utiliser, suivez la syntaxe ci-dessous :
find [flags] [path] -name [expression]
Pour rechercher un fichier nommé long.txt dans le répertoire actuel, saisissez ceci :
find ./
-name "long.txt" # ./long.txt
Pour rechercher des fichiers dont l’extension est .py (Python), vous pouvez utiliser la commande suivante :
find ./
-type f -name "*.py" ./get_keys.py ./github_automation.py ./binarysearch.py
40. Commande wget
wget
(World Wide Web get) est un utilitaire permettant de récupérer du contenu sur Internet. Il possède l’une des plus grandes collections de flags.
Voici comment télécharger un fichier Python à partir d’un dépôt GitHub :
wget https://raw.githubusercontent.com/DaniDiazTech/Object-Oriented-Programming-in-Python/main/object_oriented_programming/cookies.py
Aide-mémoire des commandes Linux
Si vous souhaitez une référence rapide, il vous suffit de consulter le tableau ci-dessous :
Commande | Utilisation |
---|---|
ls |
Lister le contenu d’un répertoire |
alias |
Définir ou afficher les alias/td> |
unalias |
Supprimer les définitions d’alias |
pwd |
Afficher le répertoire de travail |
cd |
Changer de répertoire |
cp |
Copier des fichiers et des répertoires |
rm |
Supprimer des fichiers et des répertoires |
mv |
Déplacer (renommer) des fichiers et des répertoires |
mkdir |
Créer des répertoires |
man |
Afficher la page de manuel des autres commandes |
touch |
Créer des fichiers vides |
chmod |
Modifier les autorisations de fichiers |
./ |
Exécuter un exécutable |
exit |
Quitter la session actuelle du shell |
sudo |
Exécuter les commandes en tant que superutilisateur |
shutdown |
Arrêter votre machine |
htop |
Afficher les informations sur les processus et les ressources |
unzip |
Extraire de fichiers ZIP compressés |
apt , yum , pacman |
Gestionnaires de paquets |
echo |
Afficher les lignes de texte |
cat |
Afficher le contenu du fichier |
ps |
Rapports sur l’état des processus shell |
kill |
Terminer les programmes |
ping |
Tester la connectivité du réseau |
vim |
Une édition de texte efficace |
history |
Afficher une liste des commandes précédentes |
passwd |
Modifier le mot de passe de l’utilisateur |
which |
Renvoyer le chemin binaire complet d’un programme |
shred |
Écraser un fichier pour en cacher le contenu |
less |
Inspecter les fichiers de manière interactive |
tail |
Afficher les dernières lignes d’un fichier |
head |
Afficher les premières lignes d’un fichier |
grep |
Afficher les lignes qui correspondent aux modèles |
whoami |
Afficher le nom d’utilisateur |
whatis |
Afficher les descriptions d’une seule ligne |
wc |
Compter les mots d’un fichier |
uname |
Afficher des informations sur le système d’exploitation |
neofetch |
Afficher des informations sur le système d’exploitation et le matériel |
find |
Rechercher des fichiers qui suivent un modèle |
wget |
Récupérer des fichiers sur Internet |
Résumé
L’apprentissage de Linux peut prendre un certain temps, mais une fois que vous maîtrisez certains de ses outils, il devient votre meilleur allié, et vous ne regretterez pas de l’avoir choisi au quotidien.
L’un des aspects remarquables de Linux est que même si vous êtes un utilisateur expérimenté, vous ne cesserez jamais d’apprendre à être plus productif en l’utilisant.
Il existe beaucoup d’autres commandes Linux utiles. Si nous avons oublié quelque chose, n’hésitez pas à partager vos commandes Linux préférées dans les commentaires ci-dessous !
FAQ sur les commandes Linux
Quelle sont les commandes de base de Linux ?
Il existe en fait une série de commandes de base qui sont parfaites pour toute personne qui débute avec Linux :
- pwd (Imprime le répertoire de travail)
- cat (Imprime le contenu des fichiers)
- cp (Copie les fichiers et les répertoires)
- mv (Déplace et renomme les fichiers et les répertoires)
- rm (Retire les fichiers et les répertoires)
- touch (Crée des fichiers vides)
- mkdir (Crée des répertoires)
Combien de commandes Linux possède-t-il ?
Il existe des milliers de commandes (et de nouvelles sont écrites chaque jour). Mais ne vous inquiétez pas : il n’est pas nécessaire de se souvenir d’aucune d’entre elles. Vous pouvez toujours les rechercher en ligne.
Pouvez-vous apprendre Linux par vous-même ?
C’est possible. Vous pouvez trouver de solides ressources en ligne pour vous aider à démarrer. Mais si vous avez besoin d’un coup de main, voici quelques cours bien recommandés :
Laisser un commentaire