• # Mon idée

    Posté par . En réponse au message les tableaux bash et les boucles while. Évalué à 5.

    ton problème vient du fait que tu fais une affectation au sein d'une boucle while ce qui en soit est correct, mais en bash ta construction génère un sous-shell qui exécute la boucle.

    Bilan, dès que tu sors de la boucle, ton tableau est vide.

    Je suis régulièrement confronté à ce problème et la manière de le contourner est celle-ci :


    i=0

    while read file; do
    tab[$i]="$file"
    echo "tab[$i] = ${tab[$i]}"
    i=$(($i+1))
    done << EOF
    `find . -maxdepth 1 -type f | cut -d/ -f2`
    EOF