shell脚本中的$@和$*之间有什么区别?

前端之家收集整理的这篇文章主要介绍了shell脚本中的$@和$*之间有什么区别?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在shell脚本中,$ @和$ *之间有什么区别?

哪一个是获得脚本参数的首选方式?

不同的shell解释器之间有不同吗?

here

$@ behaves like $* except that when quoted the arguments are broken up properly if there are spaces in them.

以这个脚本为例(取自链接的答案):

for var in "$@"
do
    echo "$var"
done

给出:

$ sh test.sh 1 2 '3 4'
1
2
3 4

现在将“$ @”更改为$ *:

for var in $*
do
    echo "$var"
done

你得到这个:

$ sh test.sh 1 2 '3 4'
1
2
3
4

(使用Google找到答案)

原文链接:https://www.f2er.com/bash/389036.html

猜你在找的Bash相关文章