$0表示当前执行的进程名,script 本身的名字,或者在正则表达式中表示整行输出
$# ----传递给程序的总的参数数目
$? ----上一个代码或者shell程序在shell中退出的情况,如果正常退出则返回0,反之为非0值。
$* ----传递给程序的所有参数组成的字符串。
$n ----表示第几个参数,$1 表示第一个参数,$2 表示第二个参数 ...
$0 ----当前程序的名称
$@----以"参数1" "参数2" ... 形式保存所有参数
$$ ----本程序的(进程ID号)PID
$! ----上一个命令的PID
$_ ----保存之前执行的命令的最后一个参数
[root@client ~]# cat test.sh
#!/bin/bash
echo "程序的名称是:" $0
echo "进程的PID:" $$
echo "第一个参数:" $1
echo "第二个参数:" $2
echo "第三个参数:" $3
echo "传入的参数个数:" $#
echo "传入的参数为:" "$@"
echo "传入的参数为:" "$*"
echo "最后一个参数是:" "$_"
[root@client ~]# sh test.sh 1 2 3
程序的名称是: test.sh
进程的PID: 26521
第一个参数: 1
第二个参数: 2
第三个参数: 3
传入的参数个数: 3
传入的参数为: 1 2 3
传入的参数为: 1 2 3
最后一个参数是: 3