溫馨提示×

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

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

如何理解Shell編程中的特殊變量之位置變量

發(fā)布時(shí)間:2021-09-28 15:08:06 來(lái)源:億速云 閱讀:76 作者:iii 欄目:開(kāi)發(fā)技術(shù)

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

1、$0 獲得當(dāng)前腳本的文件名,包括路徑。

代碼如下:

#寫(xiě)一個(gè)測(cè)試腳本
vim test.sh
#內(nèi)容如下
dirname$0
basename$0
#執(zhí)行一下
bash$(pwd)/test.sh
#輸出如下
/home/jane
test.sh

2、$n 獲取當(dāng)前執(zhí)行腳本的第n個(gè)參數(shù),n=1..9,$0,為當(dāng)前腳本名。如果n大于9,使用${10}

代碼如下:

echo'echo '$(seq-s " $"1 5|sed's/1/$1/') > test_n.sh
cattest_n.sh
#內(nèi)容如下
#echo $1 $2 $3 $4 $5
bashtest_n.sh arg1 agr2 arg3
#輸出內(nèi)容:
#arg1 agr2 arg3

3、$* 獲取腳本所有參數(shù)

代碼如下:

echo'echo $*'>test_*.sh
cattest_*.sh
#內(nèi)容如下:
#echo $*
bashtest_*.sh 1 2 3
#輸出:
#1 2 3

4、$# 獲得腳本所有參數(shù)的個(gè)數(shù)

代碼如下:

echo'echo $#'>test_j.sh
cattest_j.sh
#內(nèi)容如下:
#echo $#
bashtest_j.sh 1 2 3
#輸出:
#3

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

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

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

AI