学习笔记:shell脚本中的[$*],[$@] 和 [$#] [$?] [$0] [$1] [$] [$!]... 分别代表什么

本文深入探讨了bash脚本中参数解析的概念,包括$*, $@, $#, 和特殊变量$n$的使用,并通过实例展示了如何在脚本中定义函数来处理参数。文章还介绍了bash脚本中参数的获取方式以及参数数量的计算方法。
举例说:
脚本名称叫test.sh 入参三个: 1 2 3 如下
 ./test.sh 1 2 3  
运行test.sh 1 2 3后

$*为"1 2 3"(一起被引号包住)
$@为"1" "2" "3"(分别被包住)
$#为3(参数数量)


事例2:
#!/bin/bash 
my_fun() { 
    echo "$#" 
} 
echo 'the number of parameter in "$@" is '$(my_fun "$@")    
echo 'the number of parameter in "$*" is '$(my_fun "$*")
执行:./my.sh p1 "p2 p3" p4后返回:  
the number of parameter in "$@" is 3      //"$@" = "p1" "p2 p3" "p4"

the number of parameter in "$*" is 1     //"$*" = "p1 p2 p3 p4"


  1. $n
  2. $1 表示第一个参数,$2 表示第二个参数 …

  3. $#
  4. 命令行参数的个数

  5. $0
  6. 当前程序的名称

  7. $?
  8. 前一个命令或函数的返回码

  9. $*
  10. 以”参数1 参数2 … ” 形式保存所有参数

  11. $@
  12. 以”参数1″ “参数2″ … 形式保存所有参数

  13. $
  14. 本程序的(进程ID号)PID

  15. $!
  16. 上一个命令的PID

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值