Commandes terminal Unix/Linux essentielles
Naviguer, manipuler des fichiers, chercher, gérer les processus : le socle du terminal sous Linux et macOS.
Naviguer
pwd # afficher le dossier courant cd dossier/ # se déplacer dans "dossier" cd .. # remonter d'un niveau cd - # revenir au dossier précédent ls -lah # lister (détail, fichiers cachés, tailles lisibles)
Fichiers et dossiers
touch fichier # créer un fichier vide (ou mettre à jour sa date) mkdir -p a/b/c # créer des dossiers imbriqués en une seule commande cp fichier dest # copier un fichier cp -r src/ dst/ # copier un dossier (récursif) mv a b # déplacer ou renommer rm fichier # supprimer un fichier rm -i fichier # supprimer en demandant confirmation rm -r dossier/ # supprimer un dossier et tout son contenu
rm (surtout avec -r ou -rf) supprime définitivement, sans corbeille pour revenir en arrière. Vérifiez toujours le chemin avant de valider, et utilisez -i en cas de doute.
Chercher
find . -name "*.log" -mtime -1 # fichiers .log modifiés il y a moins d'un jour grep -rn "TODO" src/ # chercher "TODO" récursivement, avec les numéros de ligne rg "motif" # ripgrep : même usage, mais beaucoup plus rapide
Lire et filtrer
cat fichier # afficher tout le contenu d'un coup less fichier # afficher page par page (q pour quitter) head -n 20 fichier # les 20 premières lignes tail -f app.log # les dernières lignes, en suivant les ajouts en direct wc -l fichier # compter les lignes sort fichier | uniq -c # trier puis compter les doublons cut -d',' -f1 data.csv # extraire la 1re colonne d'un fichier CSV
Processus
ps aux # lister tous les processus en cours ps aux | grep node # ne garder que les processus contenant "node" top # moniteur de processus en temps réel htop # équivalent plus lisible (à installer séparément) kill -9 <pid> # arrêter un processus de force, via son PID commande & # lancer une commande en arrière-plan jobs # lister les tâches en arrière-plan de la session fg # ramener la dernière tâche au premier plan bg # relancer en arrière-plan une tâche mise en pause
Permissions et redirections rapides
chmod +x script.sh # rendre exécutable sudo commande # exécuter en administrateur commande > fichier # rediriger la sortie (écrase) commande >> fichier # rediriger en ajoutant à la fin commande1 | commande2 # chaîner : sortie de 1 = entrée de 2
man commande affiche le manuel complet ; commande --help un résumé plus rapide à consulter.
Liens et archives
ln -s /chemin/cible lien # créer un lien symbolique tar -czvf archive.tar.gz dossier/ # compresser (gzip) tar -xzvf archive.tar.gz # extraire zip -r archive.zip dossier/ # compresser en zip unzip archive.zip # extraire un zip
Variables d'environnement
echo $HOME # afficher une variable export MA_VAR="valeur" # définir pour la session courante env # lister toutes les variables which commande # chemin de l'exécutable utilisé
Un export ne survit pas à la fermeture du terminal — pour une variable permanente, ajoutez la ligne dans ~/.bashrc, ~/.zshrc ou l'équivalent selon votre shell.
Espace disque et réseau
df -h # espace disque par partition du -sh dossier/ # taille totale d'un dossier ping exemple.com # tester la connectivité curl -I https://exemple.com # récupérer juste les en-têtes HTTP
Merci pour votre retour !