IFS=', ' read -a array <<< "$string"
Pour accéder à un élément:
echo "${array[0]}"
Pour effectuer une itération sur les éléments:
for element in "${array[@]}"
do
echo "$element"
done
Pour obtenir à la fois l'indice et la valeur de:
for index in "${!array[@]}"
do
echo "$index ${array[index]}"
done
Le dernier exemple est utile parce que Bash tableaux sont rares. En d'autres termes, vous pouvez supprimer un élément ou d'ajouter un élément, puis les indices ne sont pas contigus.
unset "array[1]"
array[42]=Earth
Pour obtenir le nombre d'éléments dans un tableau:
echo "${#array[@]}"
Comme mentionné ci-dessus, les tableaux peuvent être dispersés de sorte que vous ne devriez pas utiliser la longueur pour obtenir le dernier élément. Voici comment vous pouvez en Bash 4.2 et versions ultérieures:
echo "${array[-1]}"
dans la version de Bash (à partir de quelque part après 2.05 b):
echo "$array[@]: -1:1}
Les grands décalages négatifs sélectionnez plus loin à partir de la fin du tableau. Remarque l'espace avant le signe moins dans la forme plus ancienne. Il est requis.