Difference between revisions of "Bash array"
From thelinuxwiki
(→Accessing arrays) |
|||
(One intermediate revision by one user not shown) | |||
Line 9: | Line 9: | ||
${array[@]} # All items of array (separate words, add quotes if words have spaces) | ${array[@]} # All items of array (separate words, add quotes if words have spaces) | ||
${!array[*]} # All of the indexes in the array | ${!array[*]} # All of the indexes in the array | ||
− | ${#array[*]} # Number of items in the array | + | ${#array[*]} #Number of items in the array |
+ | or ${#array[@]} ??? | ||
${#array[0]} # Length of item zero | ${#array[0]} # Length of item zero | ||
Line 50: | Line 51: | ||
== List all elements of original array. == | == List all elements of original array. == | ||
echo "original_array = ${original_array[@]}" | echo "original_array = ${original_array[@]}" | ||
− | |||
== Get array length == | == Get array length == | ||
echo ${#distro[@]} | echo ${#distro[@]} | ||
+ | |||
+ | == loop / iterate through array == | ||
+ | for i in ${array-name[@]} | ||
+ | do | ||
+ | print $i | ||
+ | done | ||
+ | |||
[[category:bash]] | [[category:bash]] |
Latest revision as of 19:53, 2 October 2013
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