为什么不会为数组的第一个元素接受任何值?

时间:2016-08-09 08:51:57

标签: arrays bash

显然,bash中的数组有可能是第一个元素的特殊规则,对此有何解释?

jgo ~$ myarray=(-n foo) && echo ${myarray[@]}
foo
jgo ~$ myarray=(-v foo) && echo ${myarray[@]}
-v foo
jgo ~$ myarray=(-a foo) && echo ${myarray[@]}
-a foo
jgo ~$ myarray=(-e foo) && echo ${myarray[@]}
foo

1 个答案:

答案 0 :(得分:4)

实际上,您的输出应该更像这样:

-n

原因是-eecho-的有效选项,而您尝试的其他选项则不是。