Linux Shell變量的使用輕松學習
學習Linux Shell變量時,你可能會遇到Shell變量使用的問題,這里將介紹本地變量的使用,環(huán)境變量等的使用。在這里拿出來和大家分享一下Linux Shell變量的使用
一、本地變量的使用
本地變量就如同局部變量一樣,只在本SHELL中起作用。它不會影響到其他SHELL中的變量。
1。顯示變量值
可以使用echo命令。需要注意的是,使用變量的時候必須在變量名前加上$符號
2。清除變量
使用unset命令可以清除命令。
3。顯示所有本地Linux Shell變量
SHELL中預(yù)定義了一些環(huán)境變量。要想顯示這些命令,可以使用set命令。
另外,用戶自己已經(jīng)定義過的本地變量也會在其中顯示。
4。測試變量是否已經(jīng)賦值
${variable:-value}
如果變量已經(jīng)賦值,則使用該變量值。如果變量為空,則使用value。需要注意的是,value并不賦給variable。
${variable:=value}
該表達式上面的區(qū)別就是,如果variable為空,則value賦給variable。
如果需要檢驗變量是否為空,如果為空的話則顯示帶有系統(tǒng)錯誤信息,則使用下面的表達式:
${variable:?}
如果需要顯示自己定義的信息,則如下:
${variable:?"customed message "}
5。設(shè)置只讀變量
使用readonly可以將變量定義成只讀。
readonly variable
單獨執(zhí)行readonly可以顯示所有的只讀變量。
二、環(huán)境變量
環(huán)境變量用于所有的用戶進程。在Linux中,登陸進程稱為父進程,shell中執(zhí)行的用戶程序均稱為子進程。
環(huán)境變量可以在命令行中設(shè)置,但用戶注銷時這些值將丟失。因此***在$HOME/目錄下的.profile中定義。
傳統(tǒng)上環(huán)境變量均為大寫。環(huán)境變量應(yīng)用于用戶進程之前,必須用export命令導出。設(shè)置方法與本地變量設(shè)置方法相同。
1。顯示環(huán)境變量
使用env命令可以察看所有環(huán)境變量
2。潛入SHELL變量
EXINIT保存使用vi編輯器的初始化選項。比如要顯示行號,則如下:
EXINIT='set nu';export EXINIT
HOME:用于記錄用戶的主目錄;
IFS:用作shell指定的缺省域分隔符。
PATH:保存進行命令或腳本查找的目錄順序??梢栽?profile中進行設(shè)置。
3。將變量導出到子進程
在父腳本中使用export命令可以將變量導出,這樣子腳本便可以知道該變量的值。 54com.cn
三、位置變量參數(shù)
在向腳本傳遞參數(shù)時,可以使用此位置變量來獲取參數(shù)。
他們分別是:
$0:腳本名字。此變量包含地址,可以使用basename $0獲得腳本名稱。
$1:***個參數(shù)
$2,$3,$4,$5,...一次類推。
四、特定變量參數(shù)
一些腳本運行的相關(guān)控制信息
$# 傳遞到腳本的參數(shù)個數(shù)
$* 以一個單字符串顯示所有向腳本傳遞的參數(shù)
$$ 腳本運行的ID號
$! 后臺運行的***一個進程的ID號
$@ 與$#相同,但是使用時加引號,并在引號中返回每個參數(shù)。
$- 顯示shell使用的當前選項。
$? 顯示***命令的推出狀況。0表示沒有錯誤。
【編輯推薦】