shell指令碼中的各種變數記錄

2021-08-20 01:12:56 字數 744 閱讀 7510

在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...