Cheatsheet Bash – les commandes de base

  1. Cheatsheet Bash – les commandes de base
    1. Navigation et commandes de base
    2. Gestion de fichiers et dossiers
    3. Redirections & pipes
    4. Variables
    5. Conditions (if/else)
    6. Boucles
    7. Codes de retour
    8. Astuces utiles en DevOps
    9. Bonnes pratiques pour écrire un script propre
    10. Conclusion

Cheatsheet Bash – les commandes de base

Quand on travaille en DevOps, on utilise des outils modernes : GitLab CI/CD, Docker, Kubernetes… derrière tout ça, il y a presque toujours la même chose : du Bash.

Un des exemples les plus parlant est dans un pipeline de déploiement Gitlab, il est possible d’ajouter des scripts en bash directement dans une étape.

Voici une cheatsheet simple et efficace des commandes et concepts Bash les plus utiles quand on fait du DevOps.

Même si ça paraît évident, on les utilise tous les jours.

pwd # Affiche le chemin du dossier courant
ls # Liste les fichiers et dossiers du répertoire
ls -la # Liste détaillée avec fichiers cachés et permissions
cd dossier # Entre dans le dossier "dossier"
cd .. # Remonte d’un niveau dans l’arborescence

Gestion de fichiers et dossiers

En DevOps, on inspecte souvent des logs.

cat fichier.log # Affiche tout le contenu du fichier
less fichier.log # Ouvre le fichier en lecture paginée (plus pratique pour gros fichiers)
head -n 20 fichier.log # Affiche les 20 premières lignes
tail -n 20 fichier.log # Affiche les 20 dernières lignes
tail -f fichier.log # Suit le fichier en temps réel (très utile pour les logs)

Créer et supprimer des fichiers ou dossiers :

mkdir test # Crée un dossier nommé "test"
touch fichier.txt # Crée un fichier vide nommé fichier.txt
rm fichier.txt # Supprime un fichier
rm -rf dossier/ # Supprime un dossier et son contenu (⚠️ irréversible)

Rechercher dans un fichier :

grep "ERROR" fichier.log # Recherche le mot ERROR dans le fichier
grep -r "TODO" . # Recherche récursive du mot TODO dans le dossier courant

commandes très utiles pour analyser des logs en prod ou dans un container.

Redirections & pipes

Le pipe | permet d’enchaîner des commandes.

cat fichier.log | grep ERROR # Envoie le contenu du fichier à grep pour filtrer les lignes contenant ERROR

Redirections :

echo "Hello" > fichier.txt # Écrit "Hello" dans le fichier (écrase le contenu existant)
echo "World" >> fichier.txt # Ajoute "World" à la fin du fichier sans écraser
commande 2> erreurs.log # Redirige les messages d’erreur vers un fichier
commande > sortie.log # Redirige la sortie standard vers un fichier

Variables

Définir une variable :

NAME="CodeQueen" # Définit une variable NAME
echo $NAME # Affiche la valeur de la variable

Dans un script :

#!/bin/bash
ENV=$1 # Récupère le premier argument passé au script
echo "Déploiement en $ENV" # Affiche le nom de l’environnement

Lors de l’appel d’un fichier :

./deploy.sh production # Lance le script avec "production" comme argument

Très utilisé pour rendre les scripts dynamiques.

Conditions (if/else)

Indispensable dans les scripts d’automatisation.

if [ -f "fichier.txt" ]; then
echo "Le fichier existe"
else
echo "Fichier introuvable"
fi

Exemple en situation réelle :

if [ "$ENV" = "prod" ]; then
echo "Attention environnement production"
fi

Boucles

Boucle simple :

for file in *.log; do # Parcourt tous les fichiers .log du dossier
echo $file # Affiche le nom de chaque fichier
done

Boucle while :

while read line; do # Lit un fichier ligne par ligne
echo $line # Affiche chaque ligne
done < fichier.txt # Indique le fichier à lire

Pratique pour traiter des listes ou des résultats.

Codes de retour

Chaque commande retourne un code :

  • 0 → succès
  • autre valeur → erreur

Dans un script :

if [ $? -ne 0 ]; then # Vérifie si la dernière commande a échoué (code différent de 0)
echo "Erreur détectée"
exit 1 # Stoppe le script avec un code d’erreur
fi

En CI/CD, un script qui retourne autre chose que 0 fait échouer le job.

Astuces utiles en DevOps

Trouver un processus :

ps aux | grep nginx # Recherche le processus nginx en cours d’exécution

Tuer un processus :

kill -9 1234 # Force l’arrêt du processus ayant le PID 1234

Bonnes pratiques pour écrire un script propre

Toujours commencer par :

#!/bin/bash # Indique que le script doit être exécuté avec Bash
set -e # Stoppe le script dès qu’une commande échoue

Ajouter des logs clairs :

echo "Début du déploiement..." # Affiche un message pour tracer l’exécution

Ne jamais hardcoder des secrets.

Toujours tester en local avant.

Conclusion

Bash peut sembler simple… mais c’est un outil incroyablement puissant quand on fait du DevOps.

Pas besoin de toIl n’y a pas besoin de connaitre toutes les commandes. Garde cette cheatsheet sous la main pour ne pas les oublier !


En savoir plus sur Codequeen blog

📩 Reçois les articles CodeQueen directement dans ta boîte mail !

Laisser un commentaire