[gull] bash>for>word
Daniel Cordey
dc at mjt.ch
Fri Oct 1 12:12:01 CEST 2004
On Friday 01 October 2004 11:40, Félix Hauri wrote:
> Ok, mais là tu génère un fork en dehors duquel tes variables n'existent
> plus! (Ou ne sont pas mises à jour)
On s'en f... cette notion de variable n'est pas genante si tu te contente
d'utiliser des valeusr a l'interieure du while. Definir le contenu d'une
variable a l'interieur du while pour etre utilise dans le shell appelant
n'est pa stres courant. En 22 ans de programmation shell, ca ne m'a jamais
pose de probleme et on arrive toujours a s'en sortir.
> De plus la boucle ``while ...;do ... ;done'' pour 1 itération peut être
> évitée avec des parenthèses, mais de toutes façons: fork. :-/
La boucle while n'est pas destinee a traiter juste une seule ligne... mais
l'integralite du fichier, tel que :
while read name passwd uid ...
do
echo ...
done </etc/passwd
> Cela aussi peut dérouter des débutants:
> Ou est passé ma variable! :-<
Un programme shell est avant tout destine a manipuler des fichiers. Un
programme complexe destine a faire du traitement de variables doit etre
realise dans un langage plus adapte. Pour ce faire, il y a des langage tout
aussi lisibles et nettement plus appropries (Tcl, php, Python, ...)
> (Ou bonne nuit à ceux qui décideront après cette dernière
> commande de retourner dormir un coup;)
Avec le nombre de shift que tu as dans ta boucle... j'en deduis que tu as
accomplis un 'night shift' ?-)
dc
More information about the gull
mailing list