summaryrefslogtreecommitdiff
path: root/exemple4
diff options
context:
space:
mode:
Diffstat (limited to 'exemple4')
-rwxr-xr-xexemple441
1 files changed, 41 insertions, 0 deletions
diff --git a/exemple4 b/exemple4
new file mode 100755
index 0000000..b2dd116
--- /dev/null
+++ b/exemple4
@@ -0,0 +1,41 @@
+#!/usr/bin/bash
+
+# La variable spéciale renvoie le code de sortie de la dernière commande : 0 si la commande s'est bien passée ou différent de 0 si la commande a échoué.
+
+# Exemple avec la primitive du shell test
+# help test
+
+# teste l'existence d'un répertoire "repert"
+test -d repert
+echo $?
+
+# teste l'existence d'un fichier régulier "fichier"
+test -f fichier
+echo $?
+
+# Les enchaînements conditionnels (qui se basent sur le code de sortie) :
+
+# le "Et logique" : &&
+test -f fichier && echo "le fichier existe"
+
+# le "Ou logique" : ||
+test -f fichier || echo "le fichier n'existe pas"
+
+# Enchaînement des deux:
+test -d repert && echo "le répertoire existe" || echo "le répertoire n'existe pas"
+# repert n'existe pas, on le créé et ensuite on se déplace dedans...
+test -d repert || mkdir repert && cd repert
+pwd
+cd -
+test -d repert && echo "le répertoire existe" || echo "le répertoire n'existe pas"
+# repert existe, on ne le créé pas et on se déplace dedans...
+test -d repert || mkdir repert && cd repert
+pwd
+cd -
+rmdir repert
+
+### Affiche les arguments de la ligne de commande du script ###
+### $1, $2, $3... $* (ou $@) pour tous les arguments ###
+### le script s'appelle $0 et a $# arguments ###
+test $# -lt 1 && echo "$0 demande un ou plusieurs arguments" || echo "Hello $* !"
+