1/ a) x=7;for ((i=1;i<=x;i++)); do echo $i; done b) #!/bin/bash if [[ $# -lt 1 ]] then echo " Usage : $0 " exit fi if [[ $1 -lt 0 ]] then echo " Argument must be positive ! " exit fi for (( i=1 ; i<= $1 ; i++)) do echo $i done exit 2/ #!/bin/bash if [[ $# -lt 2 ]] then echo " Usage : $0 " exit fi if [[ $1 -lt 0 ]] then echo " Arg1 must be positive ! " exit fi if [[ $2 -lt 0 ]] then echo " Arg2 must be positive ! " exit fi if [[ $1 -gt $2 ]] then echo " Arg1 must be less than Arg2 !" exit fi for (( i = $1 ; i <= $2 ; i++)) do for (( j = $1 ; j <= $2 ; j++)) do echo -n $(( i * j )) echo -ne $"\t" done echo -e $"\n" done exit 3/ a) #!/bin/bash if [[ $# -lt 2 ]] then echo " Usage : $0 " exit fi if [[ ! -f $1 ]] then echo " FILE $1 Does not exist!" exit fi if [[ -f $2 ]] then echo -n " FILE $2 already exists. Overwrite ? Yes/No --> " read answer if [[ $answer != "Yes" ]] then exit fi cp /dev/null $2 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) echo "$((2#$x)).$((2#$y)).$((2#$z)).$((2#$t))" >> $2 done exit b) 1) read x; echo "$? x=$x" affiche : 0 x=7 2) read x; echo "$? x=$x" affiche : 0 x= 3) read x; echo "$? x=$x" affiche : 1 x= read permet d'initialiser une valeur dans une variable