#!/usr/bin/bash
# OR
#!/bin/bash
ou
#!/bin/sh
ou
#!/usr/bin/zsh
# OR
#!/bin/zsh
etc… en fonction de l'interpréteur que vous souhaitez utiliser avec ce script (mais ayez en tête la compatibilité avec les différents systèmes)
Ensuite les paramètre de sécurité très utiles :
#Stoppe le script à la moindre erreur
set -e
#Stoppe le script lors d'utilisation de variable non initialisé
set -u
#Permet de récupéré le statut d'erreur d'une commande dans un pipeline au lieu de l'état de la dernière commande
set -o pipefail
#En une ligne :
set -euo pipefail
Pour une liste complète des option bash : https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html
#The Basic IF THEN ELSE FI
if < condition >;
then < do something >
else < do something else>
fi # fin du IF
#A more complete example :
if [[ -r somefile ]]; #try to read "somefile"
then content=$(cat somefile) #cat the file and feed it to "content" variable
elif [[ -f somefile ]]; #imbricate IF with elif, test if file exist
then echo "The file 'somefile' exists but is not readable to the script."
else echo "The file 'somefile' does not exist."
fi
#Consigne pour que le script soit bien interprété par le shell
# 1 - Toujours mettre des espace à l'interieur des crochet de condition : [ -r somefile ]; et pas [-r somefile];
# 2 - Mettre des point-virgule ; entre chaque instruction IF THEN ELSE ELIF FI. Particulièrement s'il sont sur la même ligne.
# 3 - Quote your string variable in conditions : [ "$somefile" == "hello world" ]