Le premier indice des tableaux bash est 0
, aussi, j’ai failli te dire de te méfier des “trous” dans les tableaux car cela pouvait causer des problèmes dans la copie de tableaux.
Mais après quelques essais, je me rends compte que bash s’est encore amélioré.
michel@debG53SW:~$ a[1]="Hello";a[3]="World";a[11]="!" # J'ai un peu poussé la dispersion des éléments du tableau
michel@debG53SW:~$ echo ${!a[@]} # J'affiche la liste des indexs dont les éléments ne sont pas vides
1 3 11
michel@debG53SW:~$ copie=( "${a[@]}" ) # Je créé un autre tableau par copie du tableau
michel@debG53SW:~$ echo ${!copie[@]} # et je constate qu'il n'y a pas de "trous" dans la copie
0 1 2
michel@debG53SW:~$ echo ${!a[@]} # les "trous" sont encore présents dans le tableau original
1 3 11
michel@debG53SW:~$ a=( "${a[@]}" ) # Copie du tableau sur lui même pour "faire le ménage"
michel@debG53SW:~$ echo ${!a[@]}
0 1 2
michel@debG53SW:~$