Linux shell程式設計 狀態變數

2021-08-25 08:53:12 字數 600 閱讀 2271

四大特殊狀態變數:$?、 $$、 $!、 $_

$$的作用是:獲取當前執行的shell指令碼的程序號pid。

$_的作用是:獲取在此之前執行的命令或指令碼的最後乙個引數。

我們通過乙個簡單的演示例項了解下這些狀態變數的用法,請看下圖

測試命令

當我執行了乙個切換到root目錄的命令沒有執行成功,我再用echo $?命令檢視結果,結果為2,非零;

當我執行乙個切換到/home/zhanghq目錄的命令執行成功了,我再用echo $?命令檢視結果,結果為0;

我用echo $$命令看到了程序號14623;

這些命令這樣執行看起來很簡單,或許你會覺得沒什麼用,因為命令執行不成功會有錯誤提示,命令執行成功會有正確的回顯內容,或者直接換行。但是確實是有一些應用場景必須用到這些變數。

比如乙個新手使用者,在安裝服務的時候,可以通過執行$?這個命令的返回值來確定命令的執行狀態,從而快速確定命令是否執行成功。

比如乙個系統管理員對當前伺服器的資料庫進行備份時,我們會再執行關鍵命令的時候,通過獲取返回值來判斷命令是否成功,確認資料是否完整。

而程式設計師通過「exit 數字」「return 數字」把數字返回給$?,憑藉此可以知道程式的執行狀態。

linux shell 程式設計

bin bash comments your commands go here 首行中的符號 告訴系統其後路徑所指定的程式bash即是解釋此指令碼檔案的shell程式。除第一行外,以 開頭的行就是注釋行,直到此行的結束。如果一行未完成,可以在行尾加上 這個符號表明下一行與此行會合併為同一行。有環境變...

linux shell 程式設計

1 程式設計入門 shell的簡介。從程式設計師的角度來看,shell本身是一種用c語言編寫的程式,從使用者的角度來看,shell是使用者與linux作業系統溝通的橋梁。使用者既可以輸入命令執行,又可以利用 shell指令碼程式設計,完成更加複雜的操作。在linux gui日益完善的今天,在系統管理...

Linux Shell 程式設計

檔案描述 shell 代號 dev stdin 標準輸入,一般指的是鍵盤輸入 dev stdout 標準輸出,一般指終端顯示器 dev stderr 標準錯誤,一般指終端顯示器 l輸出重定向 l輸入重定向 l追加重定向 l錯誤重定向 2 l輸出和錯誤同時重定向 應用例子 1.將 ls的結果輸出到檔案...