在linux下程式設計,遇到了指令碼中的變數問題,很多變數發現需要有乙個記錄,方便之後的檢視。
$0
shell本身的檔名,比如在/home目錄下的test.sh,那麼echo $0會得到的是/home/test.sh,輸出值為檔案絕對路徑。
$@
顯示所有引數的列表。如」$@」用「」」括起來的情況、以」$1」 「$2」 … 「$n」 的形式輸出所有引數。
$$
shell本身的pid(processid),這個沒有什麼好解釋的
$!
shell最後執行的後台process的pid,同上
$1、$2、、、$n
執行shell指令碼時的第n個引數
$*
所有引數列表。和$@有點像,如」$*」用「」」括起來的情況、以」
1 1
2 … $n」的形式輸出所有引數。
$#
新增到shell的引數個數,顯示使用者傳入的引數個數,並非執行時加入的變數個數。
$?
最後執行的命令的結束**(返回值),類似於c程式中return的值。
$-
使用set命令設定的flag一覽
參考鏈結
記錄shell指令碼中的特殊變數
bash shell包含一些內建命令。這些內建命令在目錄列表裡是看不見的,它們由shell本身提供。常用的內部命令有 echo eval exec export read shift。1 echo 在螢幕上輸出資訊 常用引數如下 2 export 將自定義的區域性變數轉換為全域性變數。3 shift...
shell指令碼中的變數
1 在命令列中和指令碼中,變數定義得格式 name value 左右兩邊不能有空格,否則會當做命令來對待,輸出乙個command not found echo name echo 列印出變數,引用變數使用 name.2 單引號和雙引號 語法 和php中相同 雙引號仍然可以保有變數的內容,但單引號內僅...
shell指令碼中的變數
變數就是記憶體一片區域的位址 命令無法操作一直變化的目標 用一串固定的字元來表示不固定的目標可以解決此問題 export宣告 env顯示所有環境變數 echo path export a 1 在環境關閉後變數失效 字元 數字 轉譯單個字元 弱引用,批量轉譯個數字元 不能轉譯 強引用 表示當前程序的i...