| x=(one two) |
| echo ${x[@]:1} |
| echo ${x[@]:0:1} |
| |
| x=(one) |
| echo ${x[0]:1} |
| echo ${x[0]:0} |
| echo ${x[@]:1} |
| echo ${x[@]:0} |
| |
| echo ${x[@]: -1} |
| echo ${x[@]: ${#x[@]}-1} |
| |
| x=(0 1 2 3 4 5 6 7 8 9) |
| echo ${x[@]:1} |
| |
| echo ${x[@]: -1} |
| echo ${x[@]: ${#x[@]}-1} |
| |
| set -- ${x[@]} |
| |
| echo $1 |
| echo ${@: -1} |
| echo ${@: $#-1} |
| |
| a=0123456789 |
| |
| echo ${a:1} |
| echo ${a: -1} |
| echo ${a: ${#a}-1} |
| |
| # problem with bash through 3.2.33 |
| oIFS="$IFS" |
| IFS=$'\n' |
| a=(A B C D) |
| b=("${a[@]}") |
| echo "${#b[@]}", "${b[@]}" # 4, A B C D -- OK |
| b=("${a[@]:2}") |
| echo "${#b[@]}", "${b[@]}" # 1, C D -- bug, should be 2, C D |
| IFS="$oIFS" |