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
# Mon idée
Posté par dguihal . En réponse au message les tableaux bash et les boucles while. Évalué à 5.
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 :