linux for in file,shell编程中for file in $*; do是什么意思?

fd54c46d9d6b18099a086a20c60dadc1.png

白衣非少年

我没用过$@,但是可以自己写个脚本测试下。先介绍下我知道的,如下:位置变量 :$0,$1,$2,$3,$4,$5,$6,$7,$8,$9 $0显示运行的脚本,$1...显示位置参数的值预定义变量:  $# 表示位置参数的数量  $* 表示所有位置参数的内容  $? 表示命令执行后返回的状态 (执行成功 返回0 执行不成功 返回非0)  $$ 表示当前进程的进程号 希望打开一个进程后不再打开另一个(/proc/)  $! 表示后台运行的最后一个进程号  $0 表示当前的进程名  测试脚本如下:(位置变量只输出到$3)  [root@XP-24-35 script]#vim a.sh  #!/bin/bash  echo '$0 ==> ' $0  echo '$1 ==> ' $1  echo '$2 ==> ' $2  echo '$3 ==> ' $3  echo '$$ ==> ' $$  echo '$* ==> ' $*  echo '$@ ==> ' $@  echo '$# ==> ' $#  echo '$? ==> ' $?  执行结果1(输入小于三个位置参数a,b)  [root@XP-24-35 script]# ./a.sh a b  $0 ==> ./a.sh  $1 ==> a  $2 ==> b  $3 ==>  $$ ==> 4847  $* ==> a b  $@ ==> a b  $# ==> 2  $? ==> 0  执行结果2(刚好输入三个位置参数)  [root@XP-24-35 script]# ./a.sh a b c  $0 ==> ./a.sh  $1 ==> a  $2 ==> b  $3 ==> c  $$ ==> 4844  $* ==> a b c  $@ ==> a b c  $# ==> 3  $? ==> 0  执行结果3(输入大于3个位置参数)  [root@XP-24-35 script]# ./a.sh a b c d e f  $0 ==> ./a.sh  $1 ==> a  $2 ==> b  $3 ==> c  $$ ==> 4852  $* ==> a b c d e f  $@ ==> a b c d e f  $# ==> 6  $? ==> 0  实验结果说明一切,忘采纳,谢谢。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值