Aujourd’hui, les commandes Linux ne sont plus aussi indispensables qu’elles l’ont été. Avec l’évolution des distributions Linux modernes, les interfaces graphiques sont devenues tellement complètes et conviviales qu’on peut facilement gérer les tâches courantes sans jamais ouvrir le Terminal. Pour gérer vos fichiers, installer des logiciels ou configurer votre réseau, tout est accessible depuis une interface visuelle. Mais, malgré cela, le Terminal reste un outil nécessaire pour ceux qui veulent gagner du temps, accomplir des tâches complexes ou simplement éviter de passer par une série de menus interminables.
Pour vous accompagner dans votre utilisation quotidienne de Linux, nous vous proposons un tour d’horizon de plus de 50 commandes Linux parmi les plus pratiques. Peu importe si vous êtes débutant ou un peu plus expérimenté, ces commandes sont utiles pour naviguer dans Linux de manière simple et efficace.
Sommaire
- 1. Naviguer dans les dossiers : cd, pwd, ls
- 2. Créer, supprimer et manipuler des fichiers : mkdir, rmdir, touch, rm, mv, cp, dd
- 3. Trouver des fichiers et dossiers : find, locate, which, whereis
- 4. Informations sur le système : uname, top, df, free, uptime, lscpu, lshw, ps, whoami, ncdu
- 5. Gérer les utilisateurs : adduser, deluser, passwd, usermod, groups, id
- 6. Manipuler les processus : ps, kill, killall, pkill, htop, nice, renice, watch
- 7. Gestion des paquets : apt, yum, dnf, pacman, snap, flatpak, dpkg, rpm
- 8. Rediriger la sortie et manipuler les fichiers texte : cat, less, grep, awk, sed, head, tail, sort, uniq
- 9. Compression et archivage : tar, zip, unzip, gzip, bzip2, gunzip, xz
- 10. Accéder à des serveurs distants : ssh, scp, sftp, rsync, telnet, screen, tmux
- 11. Gestion des permissions et périphériques : chmod, chown, chgrp, umask, mount, umount
- 12. Réseau : ping, ifconfig, ip, netstat, traceroute, wget, curl, ss, nmap
- 13. Automatisation et journalisation : cron, at, systemd timers, logger
- 14. Contrôle de version : git, svn
- Astuces pratiques pour utiliser le Terminal Linux
- Le mot de la fin
1. Naviguer dans les dossiers : cd, pwd, ls
Pour bien commencer, voici trois commandes de base pour naviguer efficacement dans l’arborescence de votre système de fichiers :
- cd : permet de changer de répertoire. Par exemple,
cd /home/user/Documents
vous amènera directement dans le dossier « Documents » de l’utilisateur. - pwd : affiche le chemin complet du dossier dans lequel vous vous trouvez actuellement.
- ls : affiche le contenu du répertoire courant. En ajoutant des options comme
ls -l
ouls -a
, vous pouvez voir plus de détails, comme les permissions des fichiers ou les fichiers cachés.
Ces commandes vous permettront de vous familiariser rapidement avec la structure de votre système de fichiers.
2. Créer, supprimer et manipuler des fichiers : mkdir, rmdir, touch, rm, mv, cp, dd
Voici des commandes essentielles pour créer, supprimer, manipuler des fichiers et gérer des sauvegardes :
- mkdir : crée un nouveau dossier. Par exemple,
mkdir mon_dossier
crée un dossier nommé « mon_dossier ». - rmdir : supprime un dossier vide. Si le dossier contient des fichiers, utilisez plutôt
rm -r
. - touch : crée un fichier vide.
touch nouveau_fichier.txt
crée un fichier texte vide nommé « nouveau_fichier.txt ». - rm : supprime des fichiers. Attention,
rm fichier.txt
est une commande irréversible et peut causer la perte définitive de données importantes. Pour plus de sécurité, utilisezrm -i
pour demander confirmation avant chaque suppression. - mv : déplace ou renomme un fichier. Par exemple,
mv fichier.txt /home/user
déplacera « fichier.txt » dans le dossier « user ». - cp : copie des fichiers ou des dossiers.
cp fichier.txt copie_fichier.txt
crée une copie du fichier « fichier.txt ». - dd : permet de créer une copie ou une sauvegarde de disque. Par exemple,
dd if=/dev/sda of=/backup.img
crée une image de votre disque principal.
Ces commandes Linux vous donneront une bonne base pour commencer à manipuler vos fichiers et dossiers directement depuis le Terminal Linux.
3. Trouver des fichiers et dossiers : find, locate, which, whereis
Rechercher des fichiers peut parfois s’avérer compliqué, mais ces commandes vous faciliteront la tâche :
- find : permet de rechercher des fichiers dans l’arborescence. Par exemple,
find /home -name « *.txt »
recherche tous les fichiers texte dans le répertoire « home ». - locate : est plus rapide que
find
, car il utilise une base de données pré-indexée pour trouver des fichiers. La commandelocate fichier.txt
vous renverra toutes les occurrences du fichier nommé « fichier.txt ». - which : montre l’emplacement d’une commande. Par exemple,
which ls
vous montre le chemin complet du programme « ls ». - whereis : recherche les fichiers binaires, sources et de manuel associés à une commande.
Ces commandes sont très pratiques lorsque vous travaillez avec de grandes quantités de fichiers.
4. Informations sur le système : uname, top, df, free, uptime, lscpu, lshw, ps, whoami, ncdu
Pour mieux comprendre le fonctionnement de votre système et gérer l’espace disque, voici des commandes à connaître :
- uname -a : affiche des informations détaillées sur votre système, comme le noyau utilisé.
- top : affiche en temps réel les processus actifs et l’utilisation des ressources.
- df -h : affiche l’espace disque disponible sur chaque partition.
- free -h : montre l’utilisation de la mémoire (RAM).
- uptime : affiche depuis combien de temps votre système est actif.
- lscpu : fournit des informations sur votre processeur.
- lshw : affiche des détails sur le matériel de votre système.
- ps : affiche une liste des processus actifs.
- whoami : affiche le nom de l’utilisateur actuellement connecté.
- ncdu : permet d’analyser l’espace disque de manière interactive, afin de voir quels fichiers consomment le plus d’espace.
5. Gérer les utilisateurs : adduser, deluser, passwd, usermod, groups, id
Gérer des utilisateurs est une tâche courante, surtout si plusieurs personnes utilisent la même machine. Voici comment les gérer efficacement :
- adduser : permet d’ajouter un nouvel utilisateur. Par exemple,
sudo adduser jean
crée un nouvel utilisateur nommé « jean ». - deluser : supprime un utilisateur du système.
sudo deluser jean
supprime l’utilisateur « jean ». - passwd : modifie le mot de passe d’un utilisateur.
- usermod : modifie les informations d’un utilisateur, comme son appartenance à un groupe.
- groups : affiche les groupes auxquels appartient un utilisateur.
- id : affiche l’identifiant utilisateur et groupe d’un utilisateur.
6. Manipuler les processus : ps, kill, killall, pkill, htop, nice, renice, watch
Lorsque des programmes se bloquent ou consomment trop de ressources, ces commandes vous permettent de les gérer et de les arrêter :
- ps : affiche la liste des processus en cours d’exécution.
ps aux
donne une vue complète de tous les processus. - kill : permet d’arrêter un processus en utilisant son PID (identifiant de processus).
- killall : arrête tous les processus ayant un nom spécifique.
- pkill : arrête un processus par nom.
- htop : une version améliorée de
top
, avec une interface plus facile à lire. - nice : modifie la priorité d’un processus pour l’exécuter avec moins de ressources.
- renice : modifie la priorité d’un processus en cours d’exécution.
- watch : exécute une commande de manière répétée et affiche le résultat à chaque intervalle, ce qui est très utile pour surveiller l’évolution des processus ou des fichiers.
7. Gestion des paquets : apt, yum, dnf, pacman, snap, flatpak, dpkg, rpm
Voici les commandes pour installer et mettre à jour vos applications sous Linux :
- apt : gestionnaire de paquets pour les distributions basées sur Debian, comme Ubuntu.
- yum ou dnf : pour les distributions basées sur Red Hat comme Fedora.
- pacman : pour Arch Linux.
- snap : pour installer des paquets universels.
snap install nom_du_paquet
installe une application via Snap. - flatpak : une autre méthode d’installation de paquets universels.
- dpkg : installe des paquets Debian directement, par exemple
sudo dpkg -i paquet.deb
. - rpm : pour installer des paquets sur des systèmes Red Hat.
Ces commandes Linux sont importantes pour maintenir votre système à jour et installer de nouvelles applications.
8. Rediriger la sortie et manipuler les fichiers texte : cat, less, grep, awk, sed, head, tail, sort, uniq
Pour analyser et manipuler des fichiers texte, ces commandes sont des indispensables :
- cat : affiche le contenu d’un fichier.
- less : permet de lire le contenu d’un fichier page par page.
- grep : permet de rechercher des chaînes de caractères dans un fichier.
- awk : permet de manipuler des fichiers texte et d’extraire des colonnes.
- sed : permet de faire des remplacements de texte.
- head : affiche les premières lignes d’un fichier.
- tail : affiche les dernières lignes d’un fichier.
- sort : trie le contenu d’un fichier.
- uniq : supprime les doublons dans un fichier trié.
9. Compression et archivage : tar, zip, unzip, gzip, bzip2, gunzip, xz
Gérer des archives et compresser des fichiers est une tâche courante sous Linux. Voici les commandes pour le faire efficacement :
- tar : pour créer ou extraire des archives.
- zip : compresser des fichiers.
- unzip : extraire des fichiers ZIP.
- gzip : compresser des fichiers au format gzip.
- bzip2 : compresser des fichiers au format bzip2.
- gunzip : décompresser des fichiers gzip.
- xz : compresser des fichiers au format xz, qui est très efficace pour la compression.
Ces commandes Linux sont très pratiques pour économiser de l’espace disque et faciliter le partage de fichiers.
10. Accéder à des serveurs distants : ssh, scp, sftp, rsync, telnet, screen, tmux
Pour travailler sur des serveurs distants en toute sécurité, voici les commandes essentielles à connaître :
- ssh : permet de se connecter à un serveur distant.
- scp : copie des fichiers entre votre machine et un serveur distant.
- sftp : copie des fichiers de manière sécurisée sur un serveur distant.
- rsync : synchronise des fichiers entre machines locales et distantes, très pratique pour des sauvegardes.
- telnet : permet de se connecter à des serveurs distants non sécurisés.
- screen : permet de détacher une session terminal et de la reconnecter plus tard, ce qui est très utile lors des connexions à distance.
- tmux : un gestionnaire de sessions Terminal qui permet d’ouvrir plusieurs sessions dans une seule fenêtre, idéal pour ceux qui travaillent sur plusieurs tâches simultanément.
11. Gestion des permissions et périphériques : chmod, chown, chgrp, umask, mount, umount
Pour garantir la sécurité de vos fichiers et gérer les périphériques de stockage, voici des commandes utiles :
- chmod : modifie les permissions d’un fichier. Par exemple,
chmod 755 fichier
donne les droits d’exécution au propriétaire et de lecture aux autres. - chown : change le propriétaire d’un fichier.
- chgrp : change le groupe associé à un fichier.
- umask : définit les permissions par défaut des nouveaux fichiers créés.
- mount : permet de monter un périphérique de stockage, comme une clé USB ou un disque dur externe.
- umount : démonte proprement un périphérique de stockage pour éviter toute perte de données.
12. Réseau : ping, ifconfig, ip, netstat, traceroute, wget, curl, ss, nmap
Pour vérifier votre connexion réseau ou diagnostiquer des problèmes, vous pouvez utiliser ces commandes :
- ping : vérifie la connectivité avec une autre machine.
- ifconfig ou ip : affiche la configuration réseau.
- netstat : affiche les connexions réseau actives.
- traceroute : montre le chemin emprunté pour atteindre un serveur.
- wget : télécharge des fichiers depuis Internet.
- curl : interagit avec des URLs, permet de télécharger des données.
- ss : remplace
netstat
pour afficher des informations sur les connexions réseau. - nmap : scanne le réseau pour voir les machines actives et leurs ports ouverts.
13. Automatisation et journalisation : cron, at, systemd timers, logger
Pour planifier des tâches automatisées et consigner des événements, Linux dispose de plusieurs outils puissants :
- cron : exécute des commandes de manière répétée selon un planning défini.
- at : exécute une commande une seule fois à une heure précise.
- systemd timers : permet de planifier des tâches en utilisant le système de gestion de services systemd.
- logger : permet d’ajouter des messages dans les journaux système, ce qui est utile pour le débogage et la surveillance des événements.
14. Contrôle de version : git, svn
La gestion de version est importante, surtout pour le développement de logiciels. Voici deux outils importants :
- git : permet de gérer le contrôle de version des fichiers. Par exemple,
git clone
clone un dépôt distant. - svn : une alternative plus ancienne à Git, utilisée pour le contrôle de version.
Git est important pour le travail collaboratif et la gestion des versions des fichiers de développement.
Astuces pratiques pour utiliser le Terminal Linux
Lors de l’exécution de commandes Linux, l’affichage de la console peut rapidement devenir encombré. Pour rendre le Terminal plus lisible, vous pouvez utiliser la commande clear
afin de vider l’écran.
De plus, le Terminal propose des fonctionnalités de complétion automatique grâce à la touche Tabulation (Tab). Cela vous permet de gagner du temps en complétant automatiquement les noms de fichiers ou commandes partiellement saisis.
Voici également quelques raccourcis clavier utiles :
- CTRL + A : Aller au début de la ligne.
- CTRL + E : Aller à la fin de la ligne.
- CTRL + Z : Mettre en pause une commande en cours d’exécution.
- CTRL + C : Arrêter une commande en cours d’exécution.
- CTRL + S : Bloquer le Terminal (mise en pause de l’affichage).
- CTRL + Q : Débloquer le Terminal.
Pour enchaîner plusieurs commandes sur une seule ligne, vous pouvez les séparer par un point-virgule (;
). Si vous souhaitez que la commande suivante ne s’exécute que si la précédente a réussi, utilisez plutôt &&
.
Le mot de la fin
Ce ne sont là que quelques-unes des commandes les plus utiles que vous pouvez utiliser pour mieux maîtriser Linux. Le Terminal peut paraître intimidant au début, mais il est en réalité très puissant et permet de gagner du temps lorsque l’on sait l’utiliser.
La clé est de pratiquer et de prendre son temps pour découvrir chaque commande et son utilité. Avec de l’expérience, vous verrez que taper quelques lignes est souvent plus rapide que de naviguer dans des menus interminables.
Alors, n’hésitez pas à ouvrir votre Terminal et à expérimenter ces commandes. Plus vous les utiliserez, plus elles deviendront naturelles, et plus vous vous sentirez à l’aise avec Linux 😉.