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 }