$ @和$ *有什么区别?

时间:2013-01-09 21:16:00

标签: bash shell

$@$*之间有什么区别?当我将"$@"设置为"$*"时,为什么它们具有相同的值但IFS|不同?

1 个答案:

答案 0 :(得分:5)

$@$*之间的区别:不带引号(不要这样做!),根本没有:两者都等于$1 $2 ....使用双引号,{{1将每个元素扩展为参数:$@ $1 ...,而$2扩展为合并为一个参数的所有元素:$*(其中c是第一个字符) IFS)。你几乎总是想要$1c$2c...。数组也是如此:$@