Guide complet des commandes Linux : tutoriel et aide-mémoire
Guide indépendant
Ce guide est une référence progressive et pratique du terminal Linux. Il commence par les commandes indispensables, puis mène vers l’administration, le diagnostic et l’automatisation. Les exemples couvrent les familles Debian/Ubuntu, Fedora/RHEL et Arch Linux.
Principe important : lisez une commande avant de l’exécuter, adaptez les chemins à votre système et testez les opérations destructrices sur des fichiers sans importance. Une commande exécutée avec sudo agit avec les privilèges administrateur.
1. Bien démarrer avec le terminal
Un terminal exécute un shell, généralement Bash. Le prompt indique habituellement l’utilisateur, la machine et le dossier courant. Linux distingue les majuscules des minuscules : Notes.txt et notes.txt sont deux fichiers différents.
Notations utilisées
| Notation | Signification | Exemple |
|---|---|---|
$ | Commande exécutée comme utilisateur normal | $ ls -la |
# | Commande exécutée comme administrateur root | # systemctl restart sshd |
~ | Répertoire personnel de l’utilisateur | cd ~/Documents |
. et .. | Dossier courant et dossier parent | cd .. |
commande --help | Aide courte intégrée | cp --help |
man commande | Manuel détaillé, quitter avec q | man find |
Raccourcis qui font gagner du temps
| Raccourci | Action |
|---|---|
Tab | Complète un nom de commande, fichier ou répertoire |
Ctrl+C | Interrompt la commande active |
Ctrl+L | Nettoie l’affichage du terminal |
Ctrl+R | Recherche une ancienne commande dans l’historique |
Ctrl+A / Ctrl+E | Va au début / à la fin de la ligne |
Ctrl+U / Ctrl+K | Efface avant / après le curseur |
2. Commandes de base : navigation et fichiers
Ces commandes constituent le socle quotidien. Commencez par pwd, ls et cd, puis ajoutez progressivement les opérations de création et de copie.
Navigation
| Commande | Rôle | Exemple utile |
|---|---|---|
pwd | Affiche le chemin absolu du dossier courant | pwd |
ls | Liste les fichiers | ls -lah |
cd | Change de répertoire | cd /var/log |
cd - | Revient au répertoire précédent | cd - |
cd ~ | Revient au répertoire personnel | cd ~ |
tree | Affiche une arborescence lisible | tree -L 2 projet/ |
Options utiles de ls : -l pour le format détaillé, -a pour les fichiers cachés, -h pour les tailles lisibles, -t pour trier par date et -S pour trier par taille.
Créer, copier, déplacer et supprimer
| Commande | Rôle | Exemple | Attention |
|---|---|---|---|
touch | Crée un fichier vide ou actualise sa date | touch notes.txt | N’efface pas un fichier existant |
mkdir | Crée un répertoire | mkdir -p projet/src | -p crée les parents manquants |
cp | Copie fichiers et répertoires | cp -a projet/ sauvegarde/ | -a préserve attributs et liens |
mv | Déplace ou renomme | mv ancien.txt nouveau.txt | Peut remplacer une destination existante |
rm | Supprime un fichier | rm -i brouillon.txt | Pas de corbeille; utiliser -i en apprentissage |
rmdir | Supprime un répertoire vide | rmdir dossier-vide/ | Refuse les répertoires non vides |
ln | Crée un lien physique ou symbolique | ln -s /opt/app/current app | Un lien symbolique peut devenir cassé |
file | Identifie le type réel d’un fichier | file archive.bin | Ne se fie pas seulement à l’extension |
stat | Affiche métadonnées et horodatages | stat fichier.txt | Utile pour permissions et dates |
# Créer une structure de projet sans écraser de fichiers
mkdir -p ~/projets/demo/{src,docs,tests}
touch ~/projets/demo/README.md
mkdir -p ~/projets/demo-sauvegarde
cp -a --no-clobber -- ~/projets/demo/. ~/projets/demo-sauvegarde/
3. Lire, écrire et transformer du texte
Les configurations, journaux et scripts sont majoritairement textuels. Privilégiez less pour consulter un gros fichier sans le charger entièrement.
| Commande | Usage | Exemple |
|---|---|---|
cat | Affiche ou concatène de petits fichiers | cat /etc/os-release |
less | Lecture paginée et recherche avec / | less /var/log/syslog |
head | Affiche le début | head -n 20 fichier.log |
tail | Affiche la fin ou suit les ajouts | tail -F application.log |
nl | Ajoute des numéros de ligne | nl -ba script.sh |
wc | Compte lignes, mots ou octets | wc -l *.log |
sort | Trie les lignes | sort -u utilisateurs.txt |
uniq | Regroupe les doublons adjacents | sort noms.txt | uniq -c |
cut | Extrait des champs simples | cut -d: -f1 /etc/passwd |
tr | Traduit ou supprime des caractères | tr '[:lower:]' '[:upper:]' |
sed | Transforme un flux ligne par ligne | sed 's/http:/https:/g' fichier |
awk | Analyse des colonnes et calcule | awk '{print $1, $NF}' acces.log |
diff | Compare deux fichiers | diff -u avant.conf apres.conf |
Édition sûre : créez une copie avant une modification massive. Avec GNU sed,sed -i.bak 's/ancien/nouveau/g' fichierconserve une sauvegardefichier.bak.
Éditeurs en terminal
| Éditeur | Pour qui? | Commande | Repère essentiel |
|---|---|---|---|
| nano | Débutants et modifications rapides | nano fichier.conf | Ctrl+O enregistrer, Ctrl+X quitter |
| vim | Utilisateurs avancés | vim fichier.conf | i insérer, Esc :wq enregistrer/quitter |
| micro | Interface moderne et intuitive | micro fichier.conf | Raccourcis proches des éditeurs graphiques |
4. Rechercher des fichiers et du contenu
| Outil | Ce qu’il recherche | Exemple |
|---|---|---|
find | Fichiers selon nom, taille, date ou permissions | find ~/Documents -type f -iname '*.pdf' |
locate | Noms dans un index très rapide | locate nginx.conf |
grep | Texte contenu dans des fichiers | grep -Rni -- 'erreur' /var/log/app |
rg | Recherche récursive rapide dans un projet | rg -n 'TODO|FIXME' . |
which | Exécutable choisi dans le PATH | which python3 |
command -v | Commande, alias ou fonction disponible | command -v docker |
# Fichiers de plus de 100 Mio modifiés depuis moins de 7 jours
find /var -type f -size +100M -mtime -7 -print 2>/dev/null
# Chercher "timeout" sans tenir compte de la casse
rg -ni 'timeout' /etc/nginx 2>/dev/null
# N’exécutez une action destructive qu’après avoir inspecté la liste
find /tmp -type f -mtime +14 -print
5. Utilisateurs, groupes et permissions
ls -l affiche les droits sous la forme -rwxr-x---. Les trois triplets concernent le propriétaire, le groupe et les autres. Les lettres sont r (lecture), w (écriture) et x (exécution ou traversée d’un dossier).
| Commande | Rôle | Exemple sûr |
|---|---|---|
whoami | Utilisateur courant | whoami |
id | UID, GID et groupes | id alice |
getent | Interroge comptes et groupes via NSS | getent passwd alice |
sudo | Exécute une commande autorisée comme root | sudo systemctl status ssh |
passwd | Change un mot de passe | passwd |
useradd | Crée un compte | sudo useradd -m -s /bin/bash alice |
usermod | Modifie groupes et propriétés | sudo usermod -aG sudo alice |
chmod | Modifie les permissions | chmod u+x script.sh |
chown | Change propriétaire et groupe | sudo chown alice:devs projet/ |
umask | Définit les droits retirés par défaut | umask 027 |
Modes numériques courants
| Mode | Usage courant | Interprétation |
|---|---|---|
600 | Clé privée, fichier secret | Propriétaire lecture/écriture seulement |
644 | Fichier texte public | Propriétaire écrit; tous lisent |
700 | Répertoire privé ou script privé | Propriétaire seulement |
750 | Répertoire partagé avec un groupe | Groupe lit et traverse |
755 | Répertoire public ou exécutable | Tous lisent/exécutent; propriétaire écrit |
À éviter : chmod -R 777 masque souvent un problème de propriétaire et expose les fichiers en écriture à tous. Corrigez plutôt le propriétaire, le groupe et les droits minimaux nécessaires.
6. Installer et mettre à jour des logiciels
APT — Debian, Ubuntu et dérivées
| Action | Commande | Note |
|---|---|---|
| Actualiser les index | sudo apt update | Ne met pas encore les paquets à niveau |
| Mettre à niveau | sudo apt upgrade | Lire la liste des changements proposés |
| Installer | sudo apt install htop | Ajoute les dépendances nécessaires |
| Rechercher | apt search éditeur | Pas besoin de sudo |
| Afficher les détails | apt show htop | Version, dépendances, description |
| Supprimer | sudo apt remove htop | Conserve généralement la configuration |
| Purger | sudo apt purge htop | Supprime aussi la configuration du paquet |
| Nettoyer | sudo apt autoremove | Inspecter la liste avant de confirmer |
DNF — Fedora, RHEL, AlmaLinux et Rocky Linux
| Action | Commande |
|---|---|
| Mettre à jour | sudo dnf upgrade --refresh |
| Installer | sudo dnf install htop |
| Rechercher | dnf search htop |
| Informations | dnf info htop |
| Supprimer | sudo dnf remove htop |
| Historique | dnf history |
| Annuler une transaction | sudo dnf history undo 42 |
| Nettoyer les dépendances | sudo dnf autoremove |
Pacman — Arch Linux et dérivées
| Action | Commande | Note |
|---|---|---|
| Synchroniser et mettre à niveau | sudo pacman -Syu | Évite les mises à niveau partielles |
| Installer | sudo pacman -S htop | Nom exact du paquet |
| Rechercher dans les dépôts | pacman -Ss htop | Recherche nom et description |
| Informations paquet installé | pacman -Qi htop | Utiliser -Si pour un paquet distant |
| Supprimer avec dépendances inutiles | sudo pacman -Rns htop | Examiner la transaction |
| Fichiers appartenant au paquet | pacman -Ql htop | Liste locale |
7. Processus, tâches et performances
| Commande | Rôle | Exemple |
|---|---|---|
ps | Photographie des processus | ps aux --sort=-%mem |
top | Surveillance interactive standard | top |
htop | Surveillance interactive plus lisible | htop |
pgrep | Trouve des PID par nom | pgrep -af nginx |
pidof | PID d’un programme précis | pidof sshd |
kill | Envoie un signal à un PID | kill -TERM 1234 |
pkill | Envoie un signal selon un motif | pkill -TERM -x mon-app |
nice | Lance avec une priorité CPU ajustée | nice -n 10 ./calcul |
renice | Ajuste la priorité d’un processus | sudo renice 5 -p 1234 |
jobs | Liste les tâches du shell | jobs -l |
bg / fg | Reprend une tâche en arrière-plan / avant-plan | fg %1 |
nohup | Continue après fermeture du terminal | nohup ./traitement >traitement.log 2>&1 & |
Commencez par TERM, qui permet au programme de se fermer proprement. N’utilisez kill -KILL qu’en dernier recours : le processus ne peut alors ni sauvegarder ni nettoyer ses ressources.
Mémoire, charge et ressources
| Commande | Information | Exemple |
|---|---|---|
free | Mémoire vive et swap | free -h |
uptime | Durée et charge moyenne | uptime |
vmstat | CPU, mémoire, processus et E/S | vmstat 1 5 |
iostat | Activité CPU et disques | iostat -xz 1 |
lsof | Fichiers et sockets ouverts | sudo lsof -iTCP:443 -sTCP:LISTEN |
time | Durée et ressources d’une commande | time tar -cf archive.tar dossier/ |
8. Services et journaux avec systemd
| Action | Commande | Effet |
|---|---|---|
| État | systemctl status nginx | État courant et derniers messages |
| Démarrer | sudo systemctl start nginx | Démarre maintenant |
| Arrêter | sudo systemctl stop nginx | Arrête maintenant |
| Redémarrer | sudo systemctl restart nginx | Interruption puis redémarrage |
| Recharger | sudo systemctl reload nginx | Recharge si le service le supporte |
| Activer au démarrage | sudo systemctl enable nginx | Ne démarre pas nécessairement maintenant |
| Activer et démarrer | sudo systemctl enable --now nginx | Fait les deux opérations |
| Désactiver | sudo systemctl disable nginx | Ne l’arrête pas immédiatement |
| Unités en échec | systemctl --failed | Point de départ du dépannage |
Journaux système
| Besoin | Commande |
|---|---|
| Messages d’un service | journalctl -u nginx |
| Suivi en temps réel | journalctl -u nginx -f |
| Depuis le démarrage courant | journalctl -b |
| Démarrage précédent | journalctl -b -1 |
| Erreurs depuis aujourd’hui | journalctl -p err --since today |
| Période précise | journalctl --since '2026-08-01 10:00' --until '2026-08-01 11:00' |
| Dernières lignes sans pager | journalctl -u nginx -n 100 --no-pager |
9. Disques, espace et systèmes de fichiers
| Commande | Rôle | Exemple |
|---|---|---|
df | Espace utilisé par système de fichiers | df -hT |
du | Espace utilisé par dossiers et fichiers | du -xhd1 /var | sort -h |
lsblk | Disques, partitions, points de montage | lsblk -f |
blkid | UUID et types de systèmes de fichiers | sudo blkid |
findmnt | Montages sous forme structurée | findmnt /home |
mount | Monte un système de fichiers | sudo mount /dev/sdb1 /mnt/disque |
umount | Démonte proprement | sudo umount /mnt/disque |
fuser | Identifie qui utilise un montage | sudo fuser -vm /mnt/disque |
smartctl | Santé SMART d’un disque | sudo smartctl -a /dev/sda |
Danger :mkfs,fdisk,partedetddpeuvent détruire irrémédiablement les données. Vérifiez le périphérique aveclsblk -f, démontez-le et possédez une sauvegarde testée avant toute écriture.
Trouver rapidement ce qui remplit un disque
df -hT
du -xhd1 /var 2>/dev/null | sort -h
sudo find /var -xdev -type f -size +500M -printf '%s %p\n' 2>/dev/null | sort -n
journalctl --disk-usage
10. Réseau, HTTP et connexions distantes
| Commande | Rôle | Exemple |
|---|---|---|
ip | Adresses, interfaces et routes | ip -br addr |
ping | Teste la joignabilité IP | ping -c 4 1.1.1.1 |
ss | Ports et connexions | sudo ss -lntup |
dig | Requête DNS détaillée | dig +short auxinux.ca A |
resolvectl | État DNS avec systemd-resolved | resolvectl status |
curl | Requête HTTP et API | curl -fsSIL https://auxinux.ca |
wget | Télécharge un fichier | wget -O fichier.iso https://example.org/fichier.iso |
traceroute | Chemin réseau | traceroute 1.1.1.1 |
nc | Teste un port TCP | nc -vz serveur.example 443 |
SSH et copie distante
| Besoin | Commande |
|---|---|
| Connexion | ssh utilisateur@serveur |
| Port personnalisé | ssh -p 2222 utilisateur@serveur |
| Exécuter une commande distante | ssh serveur 'uptime && df -h /' |
| Copier vers le serveur | scp fichier utilisateur@serveur:/tmp/ |
| Copier un dossier | scp -r dossier utilisateur@serveur:/tmp/ |
| Créer une clé moderne | ssh-keygen -t ed25519 -a 100 |
| Installer la clé publique | ssh-copy-id utilisateur@serveur |
Lors de la première connexion SSH, vérifiez l’empreinte de la clé hôte par un canal de confiance. N’acceptez pas aveuglément un changement de clé sur un serveur connu.
11. Archives, compression et synchronisation
| Format / outil | Créer | Extraire ou utiliser |
|---|---|---|
tar.gz | tar -czf sauvegarde.tar.gz dossier/ | tar -xzf sauvegarde.tar.gz |
tar.xz | tar -cJf sauvegarde.tar.xz dossier/ | tar -xJf sauvegarde.tar.xz |
zip | zip -r sauvegarde.zip dossier/ | unzip sauvegarde.zip |
gzip | gzip fichier.log | gunzip fichier.log.gz |
rsync | rsync -aHAX --info=progress2 source/ destination/ | Synchronise et ne retransfère que les différences |
sha256sum | sha256sum fichier.iso > fichier.iso.sha256 | sha256sum -c fichier.iso.sha256 |
Archive non fiable : inspectez-la avectar -tzf archive.tar.gzouunzip -l archive.zipavant extraction. Extrayez-la ensuite dans un répertoire vide dédié, par exemple avecmkdir extraction && tar -xzf archive.tar.gz -C extraction/. Une archive malveillante peut contenir des chemins conçus pour écraser des fichiers hors du dossier attendu.
Avec rsync, la barre finale est importante : source/ signifie « le contenu de source », tandis que source inclut le dossier lui-même. Testez une suppression miroir avec --dry-run avant d’ajouter --delete.
12. Redirections, pipes et composition
| Opérateur | Effet | Exemple |
|---|---|---|
> | Écrit la sortie en remplaçant le fichier | date > execution.txt |
>> | Ajoute à la fin | date >> historique.txt |
2> | Redirige les erreurs | commande 2> erreurs.log |
>fichier 2>&1 | Regroupe sortie et erreurs | commande > tout.log 2>&1 |
| | Envoie la sortie à une autre commande | journalctl -b | grep -i error |
tee | Affiche et écrit simultanément | commande | tee resultat.log |
&& | Exécute la suite seulement si succès | mkdir build && cd build |
|| | Exécute la suite seulement si échec | test -f config || echo 'absent' |
xargs | Construit des arguments depuis l’entrée | find . -maxdepth 1 -type f -name '*.log' -print0 | xargs -0 -r -- gzip -- |
Pipes pratiques
# Dix processus consommant le plus de mémoire
ps aux --sort=-%mem | head -n 11
# Adresses IP les plus fréquentes dans un journal web
awk '{print $1}' access.log | sort | uniq -c | sort -nr | head
# Taille des dossiers du répertoire courant
du -sh -- * 2>/dev/null | sort -h
# Conserver une trace tout en regardant la sortie
journalctl -u nginx -f | tee -a suivi-nginx.log
13. Commandes avancées et diagnostic
Ces outils expliquent pourquoi un programme, un service ou un système se comporte mal. Utilisez-les après avoir formulé une hypothèse et notez l’heure exacte du problème.
| Commande | Diagnostic | Exemple |
|---|---|---|
dmesg | Messages du noyau | sudo dmesg -T --level=err,warn |
lsof | Processus utilisant un fichier ou port | sudo lsof /var/log/app.log |
strace | Appels système d’un programme | strace -f -o trace.log commande |
ldd | Bibliothèques dynamiques requises | ldd /usr/bin/curl |
readelf | Structure d’un binaire ELF | readelf -h programme |
env | Variables d’environnement | env | sort |
ulimit | Limites du shell et des processus | ulimit -a |
watch | Répète une commande | watch -n 2 'df -h /' |
timeout | Limite la durée | timeout 30s commande |
flock | Empêche deux exécutions simultanées | flock -n /tmp/tache.lock ./tache.sh |
Méthode de diagnostic reproductible
- Définir le symptôme : commande exacte, message complet, heure, fréquence.
- Vérifier l’état :
systemctl status,df -h,free -h,ss -lntup. - Lire les journaux : filtrer l’unité et la plage horaire avec
journalctl. - Comparer : configuration récente, paquet mis à jour, port ou permission modifié.
- Tester une seule hypothèse : changer un élément, mesurer, puis revenir en arrière si nécessaire.
- Documenter : cause racine, correction et moyen de vérifier.
14. Shell Bash et automatisation
Variables, citations et expansions
| Forme | Comportement | Exemple |
|---|---|---|
nom=valeur | Variable du shell, sans espaces autour de = | dossier=/var/log |
"$nom" | Développe la variable tout en protégeant les espaces | cp -- "$fichier" sauvegarde/ |
'texte' | Texte littéral sans expansion | printf '%s\n' '$HOME' |
$(commande) | Capture la sortie d’une commande | date_iso=$(date +%F) |
${nom:-defaut} | Valeur par défaut si vide ou absente | port=${PORT:-8080} |
$? | Code de sortie précédent, 0 signifie succès | commande; printf '%s\n' "$?" |
Squelette de script robuste
#!/usr/bin/env bash
set -Eeuo pipefail
usage() {
echo "Usage: $0 <répertoire>" >&2
exit 2
}
[[ $# -eq 1 ]] || usage
source_dir=$1
[[ -d "$source_dir" ]] || { echo "Répertoire introuvable: $source_dir" >&2; exit 1; }
destination="$HOME/sauvegardes/$(date +%F-%H%M%S)"
mkdir -p -- "$destination"
rsync -a -- "$source_dir/" "$destination/"
printf 'Sauvegarde terminée: %s\n' "$destination"
Rendez-le exécutable avec chmod u+x sauvegarde.sh, puis lancez-le avec ./sauvegarde.sh ~/Documents. Analysez vos scripts avec shellcheck sauvegarde.sh lorsqu’il est disponible.
Planification
| Outil | Usage | Exemple |
|---|---|---|
at | Exécution unique différée | echo '/home/alice/tache.sh' | at 23:00 |
crontab | Planification récurrente classique | crontab -e |
systemd timer | Planification moderne avec journal et dépendances | systemctl list-timers --all |
15. Sécurité et commandes dangereuses
| Risque | Pourquoi | Alternative ou précaution |
|---|---|---|
rm -rf avec variables non citées | Une variable vide ou contenant des espaces peut élargir la suppression | Valider le chemin, utiliser -- et citer : rm -rf -- "$cible" |
curl ... | sh | Exécute immédiatement du code distant non inspecté | Télécharger, vérifier signature/hash, lire, puis exécuter |
chmod -R 777 | Autorise tous les utilisateurs à modifier | Corriger chown, groupe et droits minimaux |
dd vers un disque | Écrase les blocs sans confirmation | Vérifier trois fois lsblk et la destination |
mkfs | Recrée un système de fichiers | Sauvegarde vérifiée et périphérique démonté |
kill -9 | Empêche tout nettoyage du processus | Essayer d’abord kill -TERM |
| Secrets dans l’historique | Tokens et mots de passe persistent dans ~/.bash_history | Utiliser un gestionnaire de secrets ou une saisie interactive |
Modification directe de /etc/sudoers | Une erreur peut bloquer sudo | Utiliser sudo visudo |
Réflexes recommandés
- Utiliser le compte normal et élever uniquement la commande nécessaire avec
sudo. - Préférer les chemins absolus dans les scripts d’administration.
- Ajouter
--avant des noms de fichiers qui pourraient commencer par un tiret. - Employer
--dry-run,-nou un affichage préalable lorsque l’outil le permet. - Conserver une sauvegarde restaurable avant toute modification de disque ou de configuration distante.
16. Recettes pratiques
Diagnostiquer un service qui ne démarre pas
service=nginx
systemctl status "$service" --no-pager
journalctl -u "$service" -b -n 100 --no-pager
systemctl cat "$service"
sudo "$service" -t 2>/dev/null || true
sudo ss -lntup
La commande de validation dépend du service : pour Nginx, utilisez sudo nginx -t; pour SSH sur Debian, sudo sshd -t. Ne redémarrez qu’après une validation réussie.
Distinguer réseau, DNS et HTTP
ip -br addr
ip route
ping -c 3 1.1.1.1
dig +short auxinux.ca
curl -fsSIL --max-time 10 https://auxinux.ca
sudo ss -lntup
Analyser un manque d’espace
df -hT
df -ih
du -xhd1 /var 2>/dev/null | sort -h
journalctl --disk-usage
sudo lsof +L1
lsof +L1 révèle les fichiers supprimés encore ouverts : leur espace ne sera libéré qu’après fermeture ou redémarrage propre du processus concerné.
Synchroniser avec aperçu préalable
# Aperçu sans modification
rsync -aHAXvn --delete source/ destination/
# Après vérification attentive de l’aperçu
rsync -aHAXv --delete source/ destination/
17. Aide-mémoire essentiel
| Je veux… | Commande recommandée |
|---|---|
| Savoir où je suis | pwd |
| Lister clairement | ls -lah |
| Changer de dossier | cd chemin |
| Voir les gros dossiers | du -xhd1 . | sort -h |
| Voir l’espace disque | df -hT |
| Voir la mémoire | free -h |
| Voir les processus | ps aux --sort=-%cpu | head ou htop |
| Chercher un fichier | find . -type f -iname '*nom*' |
| Chercher dans des fichiers | rg -ni 'motif' chemin/ |
| Suivre un journal | journalctl -u service -f |
| Voir les ports ouverts | sudo ss -lntup |
| Tester une URL | curl -fsSIL URL |
| Tester le DNS | dig +short domaine A |
| Créer une archive | tar -czf archive.tar.gz dossier/ |
| Vérifier un téléchargement | sha256sum -c fichier.sha256 |
| Copier à distance | scp fichier utilisateur@serveur:/chemin/ |
| Synchroniser | rsync -aHAX --info=progress2 source/ destination/ |
| Voir l’état d’un service | systemctl status service |
| Modifier des permissions | chmod u+x script.sh |
| Obtenir de l’aide | commande --help, man commande ou tldr commande |
Pour progresser : choisissez une tâche réelle, exécutez d’abord les commandes d’observation, consultez le manuel, puis modifiez une seule chose à la fois. Le terminal devient puissant lorsque chaque commande est comprise, vérifiable et reproductible.
