<Précédent | Table des matières | Suivant>
Recherche des indices utilisés par un tableau
As bash permet aux tableaux de contenir des « espaces » dans l'attribution des indices, il est parfois utile de déterminer quels éléments existent réellement. Cela peut être fait avec une extension de paramètre en utilisant les formulaires suivants :
${ !tableau[*]}
${ !tableau[@]}
où tableau est le nom d'une variable de tableau. Comme les autres extensions qui utilisent * et @, la @ la forme entre guillemets est la plus utile, car elle se développe en mots séparés :
[moi@linuxbox ~]$ truc=([2]=a [4]=b [6]=c)
[moi@linuxbox ~]$ pour i dans "${foo[@]}" ; faire écho $i; terminé
a B C
[moi@linuxbox ~]$ pour i dans "${!foo[@]}" ; faire écho $i; terminé
2
4
6
[moi@linuxbox ~]$ truc=([2]=a [4]=b [6]=c)
[moi@linuxbox ~]$ pour i dans "${foo[@]}" ; faire écho $i; terminé
a B C
[moi@linuxbox ~]$ pour i dans "${!foo[@]}" ; faire écho $i; terminé
2
4
6