Cynical news

Links
Literature
Music
Programming
Software
Programming
Bash Arrays
Bash Arrays
Initialise

Fixed contents n/a a=(1 2 3 4 5)
1 2 3 4 5

Insert

Prepend element 'e' a=(2 3 4)
e=1;
a=($e ${a[*]})
1 2 3 4
Append element 'e' a=(1 2 3)
e=4;
a=(${a[*]} $e)
1 2 3 4
Insert element 'e' at index 'n' a=(1 2 3 4 5)
e=666
n=3
a=(${a[*]:0:$n} $e ${a[*]:$n})
1 2 3 666 4 5
Prepend array 'b' a=(1 2 3 4 5)
b=(10 20 30)
a=(${b[*]} ${a[*]})
10 20 30 1 2 3 4 5
Append array 'b' a=(1 2 3 4 5)
b=(10 20 30)
a=(${a[*]} ${b[*]})
1 2 3 4 5 10 20 30
Insert array 'b' at index 'n' a=(1 2 3 4 5)
b=(10 20 30)
n=3;
a=(${a[*]:0:$n} ${b[*]} ${a[*]:$n})
1 2 3 10 20 30 4 5
Concatenate array 'a' and array 'b' a=(1 2 3)
b=(4 5 6)
c=(${a[*]} ${b[*]})
1 2 3 4 5 6

Overwrite

Overwrite first element a=(1 2 3)
a[0]=666
666 2 3
Overwrite last element a=(1 2 3)
a[${#a[*]}-1]=666
1 2 666
Overwrite element at index 'n' a=(1 2 3)
n=1
a[n]=666
1 666 3

Count

Length of array a=(1 2 3)
n=${#a[*]}
3

Retrieve by index

Retrieve first element a=(1 2 3)
e=${a[0]}
1
Retrieve last element a=(1 2 3)
e=${a[*]: -1}
3
Retrieve last element a=(1 2 3)
e=${a[${#a[*]}-1]}
3
Retrieve element 'n' a=(1 2 3)
n=2
e=${a[$n]}
3

www.cynicalsoftware.com
14-11-09@15:37:24