$* 和$@的区别

$* $@的区别

$*将所有的命令行所有参数视为单个字符串,等同于“$1$2$3”

$@将命令行每个参数视为单独的字符串,等同于 “$1”“$2”“$3”这是将参数传递给其他程序的最佳方式,因为他会保留所有内嵌的每个参数里的任何空白

[root@mode ~]# set -- "I am " handsome oldboy

[root@mode ~]# echo $#

3

[root@mode ~]# for i in $*;do echo $i;done

I

am

handsome

oldboy

[root@mode ~]# for i in $@;do echo $i;done

I

am

handsome

oldboy

[root@mode ~]# for i ;do echo $i;done

I am

handsome

oldboy

[root@mode ~]# for i in "$@";do echo $i;done

I am

handsome

oldboy

[root@mode ~]# for i in "$*";do echo $i;done

I am handsome oldboy

感觉可以,就“赞”一个,你们的“赞” 是我进步的最大动力

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值