各变量及解释
- $$:获取当前shell的pid
- $0:获取当前脚本的名字
- $n:获取输入是第几个参数,如test.sh a b c, $1=a,$2=b,$3=c
- $#:传递给脚本的参数个数
- $*:获取所有传入的参数,字符串间存在空格
- $@:获取所有传入的参数
- $?:上个命令的退出状态,或函数的返回值
例子:
#!/bin/bash
echo '$0: ' $0
echo '$1: ' $1
echo '$$: ' $$
echo '$#: ' $#
echo '$?: ' $?
echo '$*: ' $*
for x in $@
do
echo ${x}
done
exit 0
输入
./test.sh "a" "b"
输出
$0: ./test.sh
$1: a
$$: 17957
$#: 2
$*: a b
$@: a b
$?: 0