Les bases du terminal que tout dev devrait maîtriser
Navigation
bash
cd - # retourne au répertoire précédent
cd ~ # home directory
pwd # affiche le chemin courant
ls -lah # liste avec tailles lisibles et fichiers cachés
Chercher des fichiers
bash
# Trouver un fichier par nom
find . -name "config.php"
# Trouver et exécuter une action
find . -name "*.log" -delete
# Chercher dans le contenu des fichiers
grep -r "SITE_URL" .
grep -rn "function getPosts" . # avec numéros de ligne
fd — une alternative moderne à find
bash
fd config # trouve tous les fichiers avec "config" dans le nom
fd -e php # uniquement les .php
fd -e md posts/ # .md dans le dossier posts
Chaîner les commandes
bash
commande1 && commande2 # exécute 2 si 1 réussit
commande1 || commande2 # exécute 2 si 1 échoue
commande1 ; commande2 # exécute toujours 2
commande1 | commande2 # pipe : sortie de 1 → entrée de 2
Exemple concret :
bash
# Compter les fichiers PHP modifiés aujourd'hui
find . -name "*.php" -newer index.php | wc -l
# Afficher les 20 fichiers les plus lourds
du -sh * | sort -hr | head -20
Raccourcis clavier essentiels
| Raccourci | Action |
|---|---|
Ctrl+C | Stopper le processus en cours |
Ctrl+Z | Suspendre (reprendre avec fg) |
Ctrl+R | Recherche dans l'historique |
Ctrl+L | Vider l'écran (= clear) |
Ctrl+A | Aller en début de ligne |
Ctrl+E | Aller en fin de ligne |
!! | Répéter la dernière commande |
!$ | Dernier argument de la commande précédente |
Gestion des processus
bash
ps aux | grep php # chercher un processus
kill -9 PID # forcer l'arrêt
top # moniteur en temps réel
htop # version améliorée (à installer)
SSH sans mot de passe
bash
# Générer une clé
ssh-keygen -t ed25519 -C "mon@email.com"
# Copier la clé publique sur le serveur
ssh-copy-id user@serveur.com
# Ou manuellement
cat ~/.ssh/id_ed25519.pub | ssh user@serveur "cat >> ~/.ssh/authorized_keys"
Alias utiles à mettre dans ~/.bashrc ou ~/.zshrc
bash
alias ll='ls -lah'
alias ..='cd ..'
alias ...='cd ../..'
alias gs='git status'
alias gc='git commit -m'
alias grep='grep --color=auto'
alias myip='curl ifconfig.me'
man <commande>— la documentation complète de n'importe quelle commande, directement dans le terminal.man manpour commencer.
Commentaires via Giscus — à activer dans
post.php.