Linux shell编程:状态变量
四大特殊狀態變量:$?、 $$、 $!、 $_
$?的作用是:獲取執行上一個指令的執行狀態返回值,返回0表示上一個命令或者程序執行成功,返回的值為非0則表示上一個命令執行失敗。
$$的作用是:獲取當前執行的shell腳本的進程號PID。
$!的作用是:獲取上一個后臺工作的進程的進程號PID。
$_的作用是:獲取在此之前執行的命令或腳本的最后一個參數。
我們通過一個簡單的演示實例了解下這些狀態變量的用法,請看下圖
?
?
測試命令
當我執行了一個切換到root目錄的命令沒有執行成功,我再用echo $?命令查看結果,結果為2,非零;
當我執行一個切換到/home/zhanghq目錄的命令執行成功了,我再用echo $?命令查看結果,結果為0;
我用echo $$命令看到了進程號14623;
這些命令這樣執行看起來很簡單,或許你會覺得沒什么用,因為命令執行不成功會有錯誤提示,命令執行成功會有正確的回顯內容,或者直接換行。但是確實是有一些應用場景必須用到這些變量。
比如一個新手用戶,在安裝服務的時候,可以通過執行$?這個命令的返回值來確定命令的執行狀態,從而快速確定命令是否執行成功。
比如一個系統管理員對當前服務器的數據庫進行備份時,我們會再執行關鍵命令的時候,通過獲取返回值來判斷命令是否成功,確認數據是否完整。
而程序員通過“exit 數字”“return 數字”把數字返回給$?,憑借此可以知道程序的運行狀態。
總結
以上是生活随笔為你收集整理的Linux shell编程:状态变量的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 十道上市公司java面试试题
- 下一篇: Facebook 开源了一整套重要的 L