Linux Shell變數使用

2021-06-16 11:27:36 字數 1571 閱讀 9826

一、本地變數的使用

本地變數就如同區域性變數一樣,只在本shell中起作用。它不會影響到其他shell中的變數。

1。顯示變數值

可以使用echo命令。需要注意的是,使用變數的時候必須在變數名前加上$符號

2。清除變數

使用unset命令可以清除命令。

3。顯示所有本地shell變數

shell中預定義了一些環境變數。要想顯示這些命令,可以使用set命令。

另外,使用者自己已經定義過的本地變數也會在其中顯示。

4。測試變數是否已經賦值

$如果變數已經賦值,則使用該變數值。如果變數為空,則使用value。需要注意的是,value並不賦給variable。

$該表示式上面的區別就是,如果variable為空,則value賦給variable。

如果需要檢驗變數是否為空,如果為空的話則顯示帶有系統錯誤資訊,則使用下面的表示式:

$如果需要顯示自己定義的資訊,則如下:

$5。設定唯讀變數

使用readonly可以將變數定義成唯讀。

readonly variable

單獨執行readonly可以顯示所有的唯讀變數。

二、環境變數

環境變數用於所有的使用者程序。在linux中,登陸程序稱為父程序,shell中執行的使用者程式均稱為子程序。

環境變數可以在命令列中設定,但使用者登出時這些值將丟失。因此最好在$home/目錄下的.profile中定義。

傳統上環境變數均為大寫。環境變數應用於使用者程序之前,必須用export命令匯出。設定方法與本地變數設定方法相同。

1。顯示環境變數

使用env命令可以察看所有環境變數

2。潛入shell變數

exinit儲存使用vi編輯器的初始化選項。比如要顯示行號,則如下:

exinit='set nu';export exinit

home:用於記錄使用者的主目錄;

ifs:用作shell指定的預設域分隔符。

path:儲存進行命令或指令碼查詢的目錄順序。可以在.profile中進行設定。

3。將變數匯出到子程序

在父指令碼中使用export命令可以將變數匯出,這樣子指令碼便可以知道該變數的值。

三、位置變數引數

在向指令碼傳遞引數時,可以使用此位置變數來獲取引數。

他們分別是:

$0:指令碼名字。此變數包含位址,可以使用basename $0獲得指令碼名稱。

$1:第乙個引數

$2,$3,$4,$5,...一次類推。

四、特定變數引數

一些指令碼執行的相關控制資訊

$# 傳遞到指令碼的引數個數

$* 以乙個單字串顯示所有向指令碼傳遞的引數

$$ 指令碼執行的id號

$! 後台執行的最後乙個程序的id號

$@ 與$#相同,但是使用時加引號,並在引號中返回每個引數。

$- 顯示shell使用的當前選項。

$? 顯示最後命令的推出狀況。0表示沒有錯誤。

Linux Shell變數使用

本地變數就如同區域性變數一樣,只在本shell中起作用。它不會影響到其他shell中的變數。1。顯示變數值 可以使用echo命令。需要注意的是,使用變數的時候必須在變數名前加上 符號 2。清除變數 使用unset命令可以清除命令。3。顯示所有本地shell變數 shell中預定義了一些環境變數。要想...

Linux Shell變數使用 本地變數的使用

一 本地變數的使用 本地變數就如同區域性變數一樣,只在本shell中起作用。它不會影響到其他shell中的變數。1。顯示變數值 可以使用echo命令。需要注意的是,使用變數的時候必須在變數名前加上 符號 2。清除變數 使用unset命令可以清除命令。3。顯示所有本地shell變數 shell中預定義...

Linux Shell指令碼應用 使用變數

1 變數基本操作 定義及賦值 格式 變數名 變數值例如 title beidaqingniao 引用 變數名 例如 echo title 2 雙引號 單引號 反撇號 雙引號 允許變數引用 轉義 單引號 禁止引用 單引號之中的 符號,不會去反向找變數的值,字面列印 轉義 就是它本身 反撇號 數字1左側...