Loop through Indices of Array
To loop through indices of array in Bash, use the expression ${!arr[@]}
to get the indices and use For loop to iterate over these indices.
Examples
In the following script, we take an array arr
with three elements and iterate over the indices of this array.
Example.sh
</>
Copy
arr=("apple" "banana" "cherry")
for index in "${!arr[@]}";
do
echo "$index -> ${arr[$index]}"
done
Output
0 -> apple
1 -> banana
2 -> cherry
Now, let us take an array with indices specified during initialisation, and then loop through the indices of this array.
Example.sh
</>
Copy
arr=([2]="apple" [4]="banana" [9]="cherry")
for index in "${!arr[@]}";
do
echo "$index -> ${arr[$index]}"
done
Output
2 -> apple
4 -> banana
9 -> cherry
Conclusion
In this Bash Tutorial, we have learnt how to loop through the indices of an array in Bash shell.