Précédent : 2017-12-08 / 420-C42-MA / Matériel et système d'exploitation client 2
Scripting en bash (suite)[]
La manipulation de chaînes de caractères[]
- [ chaîne1 > chaîne2 ] ― compare l'ordre de tri de deux chaînes
- [ chaîne1 == chaîne2 ] ― compare les caractères de deux chaînes
- ...
Exemple :
if [ $1 == $2 ] ; then echo -e "Les mêmes" else echo -e "Pas les mêmes" fi
Exemple 2 :
fichier=$1 if [ -f "$fichier" ] ; then echo -e "Le fichier existe" else echo -e "Le fichier n\'existe pas" fi
Longueur :
longueur=${#nom}
Extraction d'une partie d'une chaîne de caractères[]
Exemple 1 :
nom="srv01.profsavard.info" NomServeur=${nom:0:5} # une partie fixe NomDomaine=${domaine#*.} # une partie après . echo -e "Domaine : $NomDomaine, Serveur : $NomServeur"
Les expressions booléennes[]
Sur commandes :[]
- commande1 && commande2
- commande1 || commande2
- ! commande1
Les tests des expressions bool[]
...
La déclaration case[]
Tampon :
read char case "$char" in "a"|"A") echo "..." ;; "e"|"E") echo "..." ;; * ) echo "..." ;; esac
La création de boucles[]
Exemple for :[]
sum=0 for i in 1 2 3 4 ; do sum=$(($sum+$i)) done echo "La somme est $sum"
Exemple while :[]
...
Exemple until :[]
...
Débogage de script[]
bash -x ./script.sh
-x ― executer en mode debug.
On peut mettre -x dans le script :
#!/bin/bash set -x ...