Boucle WHILE

stephbret56 Messages postés 195 Statut Membre -  
Kharec Messages postés 4146 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je recherche à écrire une boucle à partir d'un fichier mais je ne connais pas la syntaxe exact.

Tant que mon fichier est différent de 0 (non vide) je boucle sinon je quitte ma proc,j'ai écrit la syntaxe suivante mais je ne sais pas si c'est la bonne.

while -eq 0 'ls -ltr monfichier'

do
#les commandes

done

Merci d'avance pour votre aide

5 réponses

jipicy Messages postés 41342 Statut Modérateur 4 896
 
Salut,
while [ -s ton_fichier ]
do
...
done
;-))
0
stephbret56 Messages postés 195 Statut Membre 6
 
slt,

Ca veut dire que dès que mon fichier est vide la boucle s'arrête ?

Merci et bonne soirée
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
Oui.
0
stephbret56 Messages postés 195 Statut Membre 6
 
Bonjour Jipicy,

Les crochets [] doivent être mise ou pas dans la syntaxe

1/Avec crochet:

while [ -s /temp/mon_fichier ]
do
...
done

2/Ou sans crochet:

while -s /temp/mon_fichier
do
...
done
0
Kharec Messages postés 4146 Date d'inscription   Statut Contributeur Dernière intervention   510
 
Avec les crochets, il me semble.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
stephbret56 Messages postés 195 Statut Membre 6
 
Merci
Donc une voix pour les crochets et les autres ils en pensent quoi???

Merci pour l'aide c'est super cool

Bon Dimanche
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
Les crochets sont en fait une autre représentation (et la plus utilisée d'ailleurs) de la commande "test", donc tu peux écrire :
while [ -s fichier ]
ou
while test -s fichier
man bash pour plus de détails ou encore Guide avancé d'écriture des scripts Bash
0
Kharec Messages postés 4146 Date d'inscription   Statut Contributeur Dernière intervention   510 > jipicy Messages postés 41342 Statut Modérateur
 
Oh, mon bouquin préféré :-p
0