溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux bash Shell中有哪些變量類型

發(fā)布時(shí)間:2021-09-28 11:06:44 來源:億速云 閱讀:114 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“Linux bash Shell中有哪些變量類型”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

一、bash變量類型:

本地變量
局部變量
環(huán)境變量
位置變量
特殊變量(內(nèi)置)

二、本地變量:

varname=value:作用域?yàn)檎麄€(gè)bash進(jìn)程可以使用;

變量命名規(guī)范:

1. 只能含字母、數(shù)字和下劃線,并且以字母和下劃線開頭
2. 最好不要跟系統(tǒng)已有的環(huán)境變量重名
3. 見名知意

三、局部變量:

local varname=value:作用域?yàn)楫?dāng)前代碼段;

四、環(huán)境變量:

作用域?yàn)楫?dāng)前shell進(jìn)程及其子進(jìn)程,不能影響到其父進(jìn)程;
export varname=value “導(dǎo)出”,如果變量已經(jīng)定義可以只是用變量名 export varname,即
1. export varname=value
2. varname=value
export varname
腳本在執(zhí)行命令時(shí)會(huì)啟動(dòng)一個(gè)子shell環(huán)境變量:
系統(tǒng)自動(dòng)執(zhí)行的腳本(非命令行啟動(dòng))就需要自我定義需要的個(gè)環(huán)境變量;

五、位置變量:

$1,$2,$3,……
cat first.sh test.txt hello
$1: first.sh
$2: test.txt
$3: hello
shift:踢掉參數(shù)
shift n:踢掉n個(gè)參數(shù),默認(rèn)踢掉一個(gè)參數(shù)

六、特殊變量:

$?:上一個(gè)命令執(zhí)行狀態(tài)的返回值:

程序執(zhí)行可能有兩種返回值:
1. 程序執(zhí)行結(jié)果
2. 程序狀態(tài)返回嗎(0-255)
0 則為執(zhí)行正確
1-255 則執(zhí)行出錯(cuò)(1,2,127系統(tǒng)預(yù)留);

$#:獲取當(dāng)前shell命令行中參數(shù)的總個(gè)數(shù)
$*:獲取當(dāng)前shell的所有參數(shù) “$1 $2 $3 …,受IFS控制
$@:這個(gè)程序的所有參數(shù) “$1″ “$2″ “$3″ “…”,不受IFS控制
$0 獲取當(dāng)前執(zhí)行的shell腳本的文件名
$n 獲取當(dāng)前執(zhí)行的shell腳本的第n個(gè)參數(shù)值,n=1..9
$$ 獲取當(dāng)前shell的進(jìn)程號(hào)(PID)
$! 執(zhí)行上一個(gè)指令的PID

“Linux bash Shell中有哪些變量類型”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI