变量 | 含义 |
---|---|
$0 | 当前脚本的文件名。 |
$n(n≥1) | 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是 $1,第二个参数是 $2。 |
$# | 传递给脚本或函数的参数个数。 |
$* | 传递给脚本或函数的所有参数。 |
$@ | 传递给脚本或函数的所有参数。当被双引号" "包含时,$@ 与 $* 稍有不同。 |
$? | 上个命令的退出状态,或函数的返回值。 |
$$ | 当前 Shell 进程 ID。对于 Shell 脚本,就是这些脚本所在的进程 ID。 |
编写test.sh
#!/bin/bash
echo "Process ID: $$"
echo "File Name : $0"
echo "First Parameter: $1"
echo "Second Parameter: $2"
echo "All Parameter 1: $@"
echo "All Parameter 2: $*"
echo "Total: $#"
运行命令
. ./test.sh Shell Linux
执行结果
Process ID: 5943
File Name: bash
First Parameter : Shell
Second Parameter : Linux
All parameters 1: Shell Linux
All parameters 2: Shell Linux
Total: 2
加引号,¥*(美元符号,这里打不出来)把参数作为一个字符串整体(单字符串)返回,$@把每个参数作为一个字符串返回