#!/usr/bin/bash # boucle for # help for # parcourit une liste d'éléments for os in windows linux mac ; do echo $os done 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 : " pal for ((i = ${#pal} ; i > 0 ; i--)); do rev=${pal:${#pal}-$i:1}$rev done echo "L'inverse de $pal est $rev" if [ $rev = $pal ]; then echo "$pal est un palindrome" else echo "$pal 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