1、参数分类
1、位置参数:
获取参数的格式:$n。第一个参数$1,第二个参数$2.。。。。 $0为该脚本的名称
2、特殊参数
| 变量 | 含义 |
|---|---|
| $# | 传递给脚本或函数的参数个数总和 |
| $* | 传递给脚本或函数的所有参数,当被双引号 " " 包含时,所有的位置参数被看做一个字符串 |
| $@ | 传递给脚本或函数的所有参数,当被双引号 " " 包含时,每个位置参数被看做独立的字符串 |
| $? | 上个命令的退出状态,或函数的返回值,0 为执行成功,非 0 则为执行失败 |
| $$ | 当前 Shell 进程 ID。对于 Shell 脚本,就是这些脚本所在的进程 ID。 |
2、参数使用
1、脚本传递:参数利用一个空格来进行分割,如果传递的参数本身就有空格,则可以利用 "" 来引起来,例如
bash args.sh php java "shell python go" # "shell python go"是一个参数
2、函数传递:同脚本传参类似
#!/bin/bash# 函数定义function show_args() {echo "第一个参数:$1"echo "第二个参数:$2"echo "脚本名称为:$0"}# 函数调用show_args go pytho-----------------------------------第一个参数:go第二个参数:python脚本名称为:args_func.sh
