一、特殊變數介紹:

1、$* :代表所有引數,其間隔為IFS內參數的第一個字元

2、$@ :與*星號類同,不同之處在於不參照IFS

3、$# :代表引數數量

4、$: 代表上一個指令的返回值

5、$- :最近執行的foreground pipeline的選項引數

6、$$ :本身的process ID

7、$ :執行上一個背景指令的PID

8、$_:顯示最後一個執行的命令

9、$N:shell的第一個外傳引數

二、舉例說明:

[root@localhost test20210730]# vim specila_variable.sh
#!/usr/bin/bash
echo "指令碼的名字是\$0:" "$0"echo "指令碼的引數是\$*:" "$*"echo "引數的數量是\$#:" "$#"echo "指令碼執行程序\$$:" "$$"echo "最後執行命令是\$_:" "$_"echo "第2個引數是\$2:" "$2"

檢視執行結果:

[root@localhost test20210730]# sh specila_variable.sh aa bb cc dd
指令碼的名字是$0: specila_variable.sh
指令碼的引數是$*: aa bb cc dd
引數的數量是$#: 4  
指令碼執行程序$$: 1368
最後執行命令是$_: 1368
第2個引數是$2: bb