summaryrefslogtreecommitdiff
path: root/exemple08
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 /exemple08
parentfbe94e6342d80fe9a79b1391b1ce2d3e547e7dbd (diff)
downloadbash_tutorial-50b0c03236f63fb25f40c47d204eeacbaf9b5d69.tar.gz
bash_tutorial-50b0c03236f63fb25f40c47d204eeacbaf9b5d69.zip
numerotation des fichiers
Diffstat (limited to 'exemple08')
-rwxr-xr-xexemple0885
1 files changed, 85 insertions, 0 deletions
diff --git a/exemple08 b/exemple08
new file mode 100755
index 0000000..58aa59a
--- /dev/null
+++ b/exemple08
@@ -0,0 +1,85 @@
+#!/usr/bin/bash
+
+# boucle for
+# help for
+# parcourir une liste d'éléments
+for os in windows linux mac ; do
+ echo $os
+done
+echo
+
+# avec les arguments du script
+if [ "$#" -gt 0 ]; then
+ for arg in $@; do
+ echo $arg
+ done
+else
+ echo "Pas d'argument passé au script !"
+fi
+echo
+
+# {debut..fin..pas}
+for i in {0..10..2} ; do
+ echo $i
+done
+echo
+
+#multiplication
+read -p "Entrez une table de multiplication : " multiplicateur
+for i in {1..10}; do
+ echo "$i x $multiplicateur = $((i*multiplicateur))"
+done
+echo
+
+# palindrome (sans la commande rev)
+# voir exemple3
+# en utilisant la syntaxe du C : (( ; ; )) . Permet d'utiliser des variables
+read -p "Choisisez un palindrome : " rep
+pal=$(echo $rep|tr [A-Z] [a-z])
+for ((i = 0; i <= ${#pal} ; i++)); do
+ rev=${pal:$i:1}$rev
+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
+
+# commandes sur des fichiers
+for fichier in * ; do
+ wc -l $fichier
+done
+echo
+
+# écrire et lire un fichier
+cat > fichier << EOF
+première ligne
+deuxième ligne
+troisième ligne
+EOF
+monfichier=$(cat fichier)
+for ligne in $monfichier; do
+ echo $ligne
+done
+echo
+
+# IFS : Internal Field separator par défaut : nouvelle ligne, tabulation, espace
+
+IFS=$'\n'
+for ligne in $monfichier; do
+ echo $ligne
+done
+echo
+unset IFS
+rm fichier
+
+# taches parallèles en arrière plan :
+for i in {1..254}; do
+ ip=192.168.2.$i
+ ping -c1 $ip >/dev/null && echo $ip : ok &
+done
+wait
+
+