abcde abcde abcde bdef abcde bdef declare -a DIRSTACK='()' declare -a a='([0]="abcde" [1]="" [2]="bdef")' declare -a b='()' declare -ar c='()' abcde bdef abcde bdef abcde abcde abcde bdef hello world 11 3 bdef hello world test expression ./array.tests: readonly: `a[5]': not a valid identifier declare -ar a='([1]="" [2]="bdef" [5]="hello world" [6]="test expression")' declare -ar c='()' declare -ar a='([1]="" [2]="bdef" [5]="hello world" [6]="test expression")' declare -ar c='()' ./array.tests: declare: e: cannot assign to array variables in this way a test declare -a DIRSTACK='()' declare -ar a='([1]="" [2]="bdef" [5]="hello world" [6]="test expression")' declare -a b='([0]="this" [1]="is" [2]="a" [3]="test" [4]="" [5]="/etc/passwd")' declare -ar c='()' declare -a d='([1]="" [2]="bdef" [5]="hello world" [6]="test" [9]="ninth element")' declare -a e='([0]="test")' declare -a f='([0]="" [1]="bdef" [2]="hello world" [3]="test" [4]="ninth element")' ./array.tests: a: readonly variable ./array.tests: b[]: bad array subscript ./array.tests: b[*]: bad array subscript ./array.tests: ${b[ ]}: bad substitution ./array.tests: c[-2]: bad array subscript ./array.tests: c: bad array subscript ./array.tests: d[7]: cannot assign list to array member ./array.tests: []=abcde: bad array subscript ./array.tests: [*]=last: cannot assign to non-numeric index ./array.tests: [-65]=negative: bad array subscript declare -a DIRSTACK='()' declare -ar a='([1]="" [2]="bdef" [5]="hello world" [6]="test expression")' declare -a b='([0]="this" [1]="is" [2]="a" [3]="test" [4]="" [5]="/etc/passwd")' declare -ar c='()' declare -a d='([1]="test test")' declare -a f='([0]="" [1]="bdef" [2]="hello world" [3]="test" [4]="ninth element")' ./array.tests: unset: ps1: not an array variable ./array.tests: declare: c: cannot destroy array variables in this way this of this is a test of read using arrays declare -a DIRSTACK='()' declare -ar a='([1]="" [2]="bdef" [5]="hello world" [6]="test expression")' declare -a b='([0]="this" [1]="is" [2]="a" [3]="test" [4]="" [5]="/etc/passwd")' declare -ar c='()' declare -a d='([1]="test test")' declare -a f='([0]="" [1]="bdef" [2]="hello world" [3]="test" [4]="ninth element")' declare -a rv='([0]="this" [1]="is" [2]="a" [3]="test" [4]="of" [5]="read" [6]="using" [7]="arrays")' abde abde bbb efgh wxyz wxyz ./array.tests a b c d e f g h ./array.tests a b c d e f g h /bin /usr/bin /usr/ucb /usr/local/bin . /sbin /usr/sbin bin bin ucb bin . sbin sbin bin / / / / / / / \bin \usr/bin \usr/ucb \usr/local/bin . \sbin \usr/sbin \bin \usr\bin \usr\ucb \usr\local\bin . \sbin \usr\sbin \bin \usr\bin \usr\ucb \usr\local\bin . \sbin \usr\sbin 4 -- 4 7 -- 7 55 49 6 -- 6 42 14 44 grep [ 123 ] * 6 7 9 6 7 9 5 ./array.tests: narray: unbound variable