• [^] # Re: Reprend les bases

    Posté par (site web personnel) . En réponse au message shell : pipe et variable locale. Évalué à 2.


    cantor@lenny:~$ ./toto
    première ligne
    seconde ligne

    cantor@lenny:~ $ for line in `./toto` ; do echo $line; done
    première
    ligne
    seconde
    ligne


    Et donc non... cela ne marche pas à cause des espaces...
    D'où le truc bizarre avec le

    ./script.sh | while read line; do
    ...
    done

    qui lui marche. Mais le problème c'est que les variables modifiés dans le while sont des variables locales (car la pipe crée un nouveau processus).
    Mais si tu as une solution plus élégante je suis prenant...