1. La commande seq 5 permet de faire afficher une sequenciel jusqu'a 5. La commande seq 7 permet de faire afficher une sequenciel jusqu'a 7. a) for ((i=1;i<=5;i++));do echo $i;done 1 2 3 4 5 La ligne de commande permet de la même chose que seq 5. for ((i=1;i<=7;i++));do echo $i;done 1 2 3 4 5 6 7 La ligne de commande permet la même chose que seq 7. b) Dans un fichier je place les lignes de commandes: for ((i=1; i<=$1; i++)); do echo $i done puis j'écrit chmod +x my_seq.sh dans le terminal puis ecrit ./my_seq.sh 45 et sa affiche la liste de 1 a 45 2) On place dans un fichier qui se nomme mult_mat.sh #!/bin/bash if [[ $# -lt 2 ]] then echo "Usage : $0 " exit fi for((i=$1;i<=$2;i++)) do for ((j=$1;j<=$2;j++)) do echo -n "$((i*j)) " done echo -e "\n" done exit 3) a) On place dans un fichier qui se prénome bin2dot-with-for.sh les lignes de commandes suivantes: if [[ $# -lt 2 ]] then echo "usage: $0 " exit fi for addr in $(cat $1) do x=$(expr substr $addr 1 8) y=$(expr substr $addr 9 8) z=$(expr substr $addr 17 8) t=$(expr substr $addr 25 8) addr_dot=$((2#$x)).$((2#$y)).$((2#$z)).$((2#$t)) echo $addr_dot done>$2 exit b) read x ; on saisit, disons 7 et on valide (). Tout de suite apr`es, on fait : echo "$? x=$x". Elle affiche 0 x=7 On recommence avec read x, en tapant directement , sans rien saisir. Alors : echo "$? x=$x" ; affiche --> 0 x= On recommence avec read x, sans rien saisir et sans taper mais en tapant CTRL-D (rappel : signifie fin du fichier entrée standard). Alors : echo "$? x=$x" ; affiche --> 1 x=