首页 > 其他 > 详细

【shell脚本学习】$*与$@

时间:2014-03-10 19:54:50      阅读:431      评论:0      收藏:0      [点我收藏+]

$*与$@变量都提供了对所有参数的快速访问,这两个都能够在单个变量中存储所有的命令行参数。

$*变量会将命令行上提供的所有参数当作单个单词保存,其会被当作单个参数,而不是多个对象。

$@变量会将命令行上提供的所有参数当作同意个字符串中的多个独立的单词。他允许遍历所有的值,将提供的每个参数分割开来。这通常通过for命令完成。

下面看一个例子就明白啦~

root@wl-MS-7673:/home/wl/桌面/shell# cat -n test.sh 
     1	    #!/bin/bash  
     2	    echo "\$* and \$@ test"  
     3	    echo "\$* is:"$* #这里两个输出结果是一样的  
     4	    echo "\$@ is:"$@ #  
     5	    count=0  
     6	    for var in "$*"  
     7	    do  
     8	        count=$[$count+1]  
     9	        echo "$count:"$var  
    10	    done  
    11	      
    12	    echo "\$* done."  
    13	      
    14	    count=0  
    15	    for var in "$@"  
    16	    do  
    17	        count=$[$count+1]  
    18	        echo "$count:"$var  
    19	    done  
    20	    echo "\$@ done."  
root@wl-MS-7673:/home/wl/桌面/shell# 
运行输出结果如下:

root@wl-MS-7673:/home/wl/桌面/shell# ./test.sh a b c d e f
$* and $@ test
$* is:a b c d e f
$@ is:a b c d e f
1:a b c d e f
$* done.
1:a
2:b
3:c
4:d
5:e
6:f
$@ done.
root@wl-MS-7673:/home/wl/桌面/shell# 


【shell脚本学习】$*与$@,布布扣,bubuko.com

【shell脚本学习】$*与$@

原文:http://blog.csdn.net/hongkangwl/article/details/20916723

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!