Ecrire une boucle [Shell Script] - Linux et OS Alternatifs
Marsh Posté le 07-04-2006 à 13:23:15
Ce qui ne me plaît pas, c'est la commande a=Bonjour. En fait, j'ai mis une commande bidon car le while n'accepte pas de ne rien faire. Est-il possible de ne faire que le traitement ?
Marsh Posté le 07-04-2006 à 21:05:17
Merci, ça marche.
Je n'ai jamais vu ce "double point". Est-ce une façon propre de dire "je ne fais rien" ?
Marsh Posté le 07-04-2006 à 21:19:44
euh normalement c'est ; et non pas :
le point virgule se met en fin de ligne, et ca veut dire que la commande est terminée. si il n'y a rien avant le ';', ben ca ne fait Rien.
Marsh Posté le 07-04-2006 à 21:21:15
en fait l0ky te disait surement de mettre :
while traitement
;
done
alors que pillow ecrit "do :"
c'est 2 manieres d'ecrire la meme chose je pense.
Marsh Posté le 07-04-2006 à 22:28:34
e-miel a écrit : Merci, ça marche. |
C'est un builtin qui ne fait rien et qui retourne 0. C'est plus ou moins ce qui est le plus "propre" pour réaliser ce genre de choses, oui.
En général, on l'utilise plutôt comme ça :
Code :
|
M'enfin, le shell script n'étant de toute façon pas fait pour être élégant, je pense qu'il ne vaut mieux pas trop s'éterniser sur ces détails stylistiques
Marsh Posté le 07-04-2006 à 22:36:59
l0ky a écrit : mettre un ; |
J'ai essayé, mais ça ne marche pas : erreur de syntaxe.
Pillow a écrit : while traitement |
Ca marche !!!
steinworfer a écrit : euh normalement c'est ; et non pas : |
Ton raisonnement est valable, mais il ne résoud pas le problème.
steinworfer a écrit : en fait l0ky te disait surement de mettre : |
J'ai essayé ce que tu suggère (sans le do) et ça ne marche pas : erreur de syntaxe.
Suite à tout ça, je repose ma question :
e-miel a écrit : Je n'ai jamais vu ce "double point". Est-ce une façon propre de dire "je ne fais rien" ? |
Marsh Posté le 07-04-2006 à 22:38:34
Merci pour ta réponse pillow, je ne l'avais pas vue avant de commencer ma réponse.
Marsh Posté le 07-04-2006 à 12:19:51
Je dispose d'un exécutable traitement que je souhaite exécuter jusqu'à ce qu'il échoue. Voici ce que j'écris d'habitude :
while traitement
do a=Bonjour
done
Y a-t-il une façon plus propre d'écrire ça ?