$ 在linux里是用來給變量命令的,例如$JAVA_HOME,是指JAVA_HOME的環(huán)境變量。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供江西網(wǎng)站建設(shè)、江西做網(wǎng)站、江西網(wǎng)站設(shè)計(jì)、江西網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、江西企業(yè)網(wǎng)站模板建站服務(wù),10余年江西做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
echo $JAVA_HOME 可以在linux終端輸出jdk的home目錄。
在Shell 腳本中向腳本傳遞參數(shù)也會(huì)用到$,例如腳本內(nèi)獲取參數(shù)的格式為:$n,n?代表一個(gè)數(shù)字,1 為執(zhí)行腳本的第一個(gè)參數(shù),2 為執(zhí)行腳本的第二個(gè)參數(shù),以此類推。
實(shí)例-向腳本傳遞三個(gè)參數(shù),并分別輸出,其中?$0?為執(zhí)行的文件名:
#!/bin/bash
Shell 傳遞參數(shù)實(shí)例!";
echo "執(zhí)行的文件名:$0";
echo "第一個(gè)參數(shù)為:$1";
echo "第二個(gè)參數(shù)為:$2";
echo "第三個(gè)參數(shù)為:$3";
擴(kuò)展資料
另外$還可以配合幾個(gè)特殊字符用來處理參數(shù):
1、$#:傳遞到腳本的參數(shù)個(gè)數(shù)。 ??
2、$* :以一個(gè)單字符串顯示所有向腳本傳遞的參數(shù)。
如"$*"用「"」括起來的情況、以"$1 $2 … $n"的形式輸出所有參數(shù)。 ??
3、$$:腳本運(yùn)行的當(dāng)前進(jìn)程ID號(hào) 。??
4、$!:后臺(tái)運(yùn)行的最后一個(gè)進(jìn)程的ID號(hào)。 ??
5、$@:與$*相同,但是使用時(shí)加引號(hào),并在引號(hào)中返回每個(gè)參數(shù)。
如"$@"用「"」括起來的情況、以"$1" "$2" … "$n" 的形式輸出所有參數(shù)。 ??
6、$-:顯示Shell使用的當(dāng)前選項(xiàng),與set命令功能相同。 ??
7、$? :顯示最后命令的退出狀態(tài)。0表示沒有錯(cuò)誤,其他任何值表明有錯(cuò)誤。 ?
命令提示符
“$在linux里是命令提示符的意思。 對(duì)于Linux系統(tǒng)來說,無論是中央處理器、內(nèi)存、磁盤驅(qū)動(dòng)器、鍵盤、鼠標(biāo),還是用戶等都是文件,Linux系統(tǒng)管理的命令是正常運(yùn)行的核心,與之前的DOS命令類似。linux命令在系統(tǒng)中有兩種類型:內(nèi)置Shell(外殼)命令和Linux命令
題主你好,
前提: 我們知道每個(gè)進(jìn)程運(yùn)行后,系統(tǒng)都會(huì)分配給其一個(gè)id號(hào),這個(gè)id號(hào)和進(jìn)程是關(guān)聯(lián)的,我們可以通過操作該id來實(shí)現(xiàn)操作對(duì)應(yīng)進(jìn)程的目的,如通過id殺死進(jìn)程等.
$!很多人解釋為后臺(tái)運(yùn)行的最后一個(gè)進(jìn)程的id號(hào)(我覺得解釋為最近一次后臺(tái)運(yùn)行的id號(hào)更容易理解). 舉個(gè)例子說一下吧,這樣更直觀一點(diǎn).
我們先準(zhǔn)備一個(gè)簡(jiǎn)單的腳本1.sh, 里面內(nèi)容很簡(jiǎn)單,就是睡眠100秒:
下面我們?cè)诤笈_(tái)運(yùn)行這個(gè)腳本,看一下$!的輸出結(jié)果:
從上圖可以看出, 腳本運(yùn)行后,系統(tǒng)分配給它的進(jìn)程id是54821, 后面我們連續(xù)輸出三次$!,得到的結(jié)果是一樣的,都是54821.? 因?yàn)?.sh這個(gè)腳本就是我們最近一次后臺(tái)運(yùn)行的腳本,所以此時(shí)無論輸出多少次$!結(jié)果都是一樣的.
-----
接下來, 我們?cè)龠\(yùn)行一個(gè)內(nèi)容同1.sh相同的2.sh:
可以看到, $!的輸出結(jié)果變?yōu)榱?4860,不再是上面的54821. 因?yàn)榇藭r(shí)2.sh是我們最近一次后臺(tái)運(yùn)行的腳本,因此,$!結(jié)果變?yōu)榱?4860.
=====
希望可以幫到題主, 歡迎追問.