Linux Shell腳中經常會遇到一大堆美元符號 ($),有些符號容易搞混,他們代表的含義我做個記錄:
- $0 shell的命令本身(包括完整路徑)
- $1到$9 數字表示shell 的第幾個參數
- $# 傳遞到腳本的參數個數
- $* 以一個單字符串顯示所有向腳本傳遞的參數
- $$ 腳本運行的ID號
- $! 後台運行的最後一個進程的ID號
- $@ 與$*相同。
- $- 顯示shell使用的當前選項。
- $? 顯示最後命令的執行狀況。0表示沒有錯誤。
舉個例子:
- [www.linuxidc.com@linuxidc /tmp]$ ./test.sh p1 p2
- $0 is { ./test.sh }
- $1 is { p1 }
- $2 is { p2 }
- $* is { p1 p2 }
- $@ is { p1 p2 }
- $# is { 2 }
- $! is { }
- $$ is { 25643 }
- $? is { 0 }