Bash array
From thelinuxwiki
Arrays do not to be declared. Bash allows on dimensional arrays.
Contents |
Accessing arrays
where array = array name
${array[*]} # All of the items in the array (single word) ${array[@]} # All items of array (separate words, add quotes if words have spaces) ${!array[*]} # All of the indexes in the array ${#array[*]} #Number of items in the array or ${#array[@]} ??? ${#array[0]} # Length of item zero
Example Array 1:
#!/bin/bash function test_function { color[1]=red # <<< array assignments color[2]=white # <<< array assignments color[3]=blue # <<< array assignments # Using brace expansion ... # Bash, version 3+. for a in {1..3} do echo "${color[$a]}" #<<< curly braces needed !!!! done } #main body test_function # the function msut be invoked below or after it is defined
Example Array 2
#!/bin/bash function test_function { color=( zero one two three ) # <<< array assignments # Using brace expansion ... # Bash, version 3+. for a in {1..3} do echo "${color[$a]}" #<<< curly braces needed !!!! done } #main body test_function # the function msut be invoked below or after it is defined echo "original_array = ${color[@]}"
List all elements of original array.
echo "original_array = ${original_array[@]}"
Get array length
echo ${#distro[@]}
loop / iterate through array
for i in ${array-name[@]} do print $i done