3
Bash中可能的错误?:foo(){echo“ $ {var [0]}”; }; var =(bar baz)foo
作业系统:Ubuntu 16.04.3 外壳:Bash 4.3.48 我知道可以像中那样临时更改变量的内容var=value command,这可能IFS= read -r var是最值得注意的情况。 而且,感谢Greg的Wiki,我也了解: # Why this foo() { echo "$var"; } var=value foo # And this does work var=value; echo "$var" # But this doesn't var=value echo "$var" 我无法理解的是: $ foo() { echo "${var[0]}"; } $ var=(bar baz) foo (bar baz) 据我所知(按照前面示例的逻辑),它应该打印bar,而不是(bar baz)。 …