linux操作系统中位置参数变量$*与$@的区别

$*的代码:

运行结果:

注释:a.sh为这个文件的文件名,1 2 3 4为输入的内容,此程序中的for循环只循环一次

$@的代码:

运行结果:

 

注释:b.sh为文件名,1 2 3 4为输入内容,此程序中的for循环循环多次(有几个空格就循环几次)

二者的区别为$*遇到空格会把它当成一个字符输出,即它输出的内容为一个包含空格的长字符串

                       ,而$@遇到空格会终止当前循环,即它输出的内容为多个不包含空格的短字符串

猜你喜欢

转载自www.cnblogs.com/ztz-99a/p/9247600.html