我有一个索引的bash数组,我想使用像“$ {a [@]}”之类的表达式,除非我希望它不包含[0]。我能想到的最好的是:
j=0
for i in "${a[@]}"
do
b[j]=${a[++j]}
done
然后使用“$ {b [@]}”。还有更好的方法吗?
答案 0 :(得分:39)
$ a=(1 2 3)
$ echo "${a[@]:1}"
2 3
答案 1 :(得分:1)
如果是标准数组,请使用:
"${a[@]:1}"
如果要使用参数:
"${@:2}"
请注意不同的语法,$@
是1索引的(因为$ 0是脚本的名称)。