Home Informatique CV Projets Famille J'aime Mmm Coup de gueule Web Radio Belge B&M Jeux Art-NFT C+ 95

C'est une pub! Ce thême est basé sur w3 css.

Oui vous êtes capable de modifier ce thême

Cool? Oui, avec plein d'exemples faciles à comprendre et à modifier.

Aller sur W3.CSS Tutorial c'est en anglais mais google peux traduire les pages.

La boucle en bash

La curiosité n’est pas un vilain défaut mais une qualité fondamentale.

La boucle for est suivi du nom d'une variable comme je suis fainéant la variable c'est n pour dire numéro. in pour dire dans, dans quoi allons nous chercher le contenu futur de notre variable n?
Et bien dans la suite 1 2 3 4 5, il faut savoir qu'il existe des séparateurs standards l'espace, la tabulation et le retour à la ligne.

for n in 1 2 3 4 5
do
  echo "Bonjour $n fois"
done

Retour :

Bonjour 1 fois
Bonjour 2 fois
Bonjour 3 fois
Bonjour 4 fois
Bonjour 5 fois

Depuis la version 3.0+ de bash une autre forme s'offre à vous

for n in {1..5}
do
  echo "Bonjour $n fois"
done
Bonjour 1 fois
Bonjour 2 fois
Bonjour 3 fois
Bonjour 4 fois
Bonjour 5 fois

Et depuis la version 4.0+ de bash, la forme suivante

echo "Bash version ${BASH_VERSION}..."
for n in {1..10..2}
do
  echo "Bonjour $n fois"
done
Bash version 4.0.13(0)-release...
Bonjour 1 fois
Bonjour 3 fois
Bonjour 5 fois
Bonjour 7 fois
Bonjour 9 fois
Autre exemple
for n in $(ls)
do
  echo "Fichier ou dossier : $n"
done

Cette fois on remplace la suite 1 2 3 4 5 par une variable spéciale $().
Cette variable contient le résultat de la commande ls.

La forme héritée du langage C

for (( n=1; n<=5; n++ ))
do
  echo "Bonjour $n fois"
done
Bonjour 1 fois
Bonjour 2 fois
Bonjour 3 fois
Bonjour 4 fois
Bonjour 5 fois

Vous désirez faire une boucle infinie ?

for (( ; ; ))
do
echo "Boucle infinie [ Appuyez sur CTRL+C pour sortir de la boucle ]"
done

Il existe de opérateur supplémentaire, break et continue.
Break Arrête la boucle
Continue Arrête la boucle pour l'itération en cours et passe à la suivante itération.

On y reviendra plus tard.

Extrait de la page de manuel de bash :

for nom [ [ in [ mot ... ] ] ; ] do liste ; done
La liste de mots suivant in est développée, produisant une liste d'éléments. La variable nom prend tour à tour la valeur de chacun des éléments et liste est exécutée à chaque fois.
Si in mot est omis, la commande for exécute la liste une fois pour chacun des paramètres positionnels existants (consultez PARAMÈTRES ci-dessous). L'état renvoyé est l'état final de la dernière commande exécutée.
Si le développement des éléments suivant in conduit à une liste vide, aucune commande n'est exécutée et l'état renvoyé est 0.

for (( expr1 ; expr2 ; expr3 )) ; do liste ; done
L'expression arithmétique expr1 est d'abord évaluée selon les règles décrites ci-dessous sous ÉVALUATION ARITHMÉTIQUE. L'expression arithmétique expr2 est ensuite évaluée répétitivement jusqu'à valoir zéro.
Chaque fois que expr2 est évaluée en une valeur différente de zéro, liste est exécutée et l'expression arithmétique expr3 est évaluée. Si l'une des expressions est omise, elle est considérée comme s'évaluant à 1.
La valeur renvoyée est l'état final de la dernière commande dans liste qui est exécutée ou faux si l'une des expressions est incorrecte.