如LDP: Bash-Beginners-Guide所述,使用 [*] 和 [@] 都会引用数组的所有成员。
10.2.2。取消引用数组中的变量
为了引用数组中项目的内容,请使用花括号。从下面的示例中可以看出,这是必要的,以绕过扩展运算符的shell解释。如果索引号是@或*,则引用数组的所有成员。
array=(1 2 3)
echo ${array[*]}
# 1 2 3
echo ${array[@]}
# 1 2 3
我想知道它们之间的区别是什么,它们之间的可移植性(Korn,Dash,Bash,Zsh)的优势形式是什么。