summaryrefslogtreecommitdiff
path: root/exemple06
diff options
context:
space:
mode:
authorjerome <jerome@xlinfo.fr>2024-04-14 17:04:20 +0200
committerjerome <jerome@xlinfo.fr>2024-04-14 17:04:20 +0200
commit50b0c03236f63fb25f40c47d204eeacbaf9b5d69 (patch)
tree9618a8ba231a221325b645415dfbe098c697dad8 /exemple06
parentfbe94e6342d80fe9a79b1391b1ce2d3e547e7dbd (diff)
downloadbash_tutorial-50b0c03236f63fb25f40c47d204eeacbaf9b5d69.tar.gz
bash_tutorial-50b0c03236f63fb25f40c47d204eeacbaf9b5d69.zip
numerotation des fichiers
Diffstat (limited to 'exemple06')
-rwxr-xr-xexemple0670
1 files changed, 70 insertions, 0 deletions
diff --git a/exemple06 b/exemple06
new file mode 100755
index 0000000..94523f5
--- /dev/null
+++ b/exemple06
@@ -0,0 +1,70 @@
+#!/usr/bin/bash
+
+read -p "Entre une table de multiplication : " nb
+
+# boucle while (tant que)
+# help while
+i=1
+while [ $i -lt 10 ] ;do
+ echo "$i x $nb = $((i*nb))"
+ ((i++))
+done
+
+# boucle until (jusqu'à ce que)
+# help until
+i=1
+until [ $i -gt 9 ] ;do
+ echo "$i x $nb = $((i*nb))"
+ ((i++))
+done
+
+# palindrome (sans la commande rev)
+# voir exemple3
+read -p "Choisisez un palindrome : " rep
+pal=$(echo $rep|tr [A-Z] [a-z])
+i=${#pal}
+while [ "$i" -gt 0 ] ; do
+ rev+=${pal:$i-1:1}
+ ((i--))
+done
+echo "L'inverse de $pal est $rev"
+if [ $rev = $pal ]; then
+ echo "$rep est un palindrome"
+else
+ echo "$rep n'est pas un palindrome"
+fi
+echo
+
+# Avec le code de sortie d'une commande Linux
+read -p "Entrez le nom d'un utilisateur : " utilisateur
+while who | grep -q $utilisateur ; do
+ echo "$utilisateur est connecté"
+ sleep 5
+done
+echo "$utilisateur s'est déconnecté"
+
+# while true
+# break et continue...
+# help break
+# help continue
+i=0
+while true; do
+ ((i++))
+ if [ "$i" -eq 5 ]; then
+ continue
+ elif [ "$i" -eq 10 ]; then
+ break
+ fi
+ echo "$i"
+ sleep 1
+done
+
+# while et shift : décalage des aguments positionnels !
+if [ "$#" -gt 0 ];then
+while [ "$1" != "" ];do
+ echo "Hello $1"
+ shift
+done
+else
+ echo "Pas d'argument passé au script"
+fi