1、首先,連接相應(yīng)linux主機(jī),進(jìn)入到linux命令行狀態(tài)下,等待輸入shell指令。
成都創(chuàng)新互聯(lián)是一家專(zhuān)注于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)與策劃設(shè)計(jì),尖扎網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:尖扎等地區(qū)。尖扎做網(wǎng)站價(jià)格咨詢(xún):028-86922220
2、其次,在linux命令行中輸入:cp -f word.txt /word.txt。
3、鍵盤(pán)按“回車(chē)鍵”運(yùn)行shell指令,此時(shí)會(huì)看到cp命令直接執(zhí)行不提示用戶手動(dòng)判斷覆蓋了。
在Linux下,如果你需要執(zhí)行shell腳本,那么應(yīng)該使用那個(gè)命令呢?下面由我為大家整理了linux shell腳本執(zhí)行命令的相關(guān)知識(shí),希望對(duì)大家有幫助!
linux shell腳本執(zhí)行
linux shell腳本執(zhí)行方法一: 切換到shell腳本所在的目錄(此時(shí),稱(chēng)為工作目錄)執(zhí)行shell腳本:
cd /data/shell
./hello.sh
./的意思是說(shuō)在當(dāng)前的工作目錄下執(zhí)行hello.sh。如果不加上./,bash可能會(huì)響應(yīng)找到不到hello.sh的錯(cuò)誤信息。因?yàn)槟壳暗墓ぷ髂夸?/data/shell)可能不在執(zhí)行程序默認(rèn)的搜索路徑之列,也就是說(shuō),不在環(huán)境變量PASH的內(nèi)容之中。查看PATH的內(nèi)容可用 echo $PASH 命令。現(xiàn)在的/data/shell就不在環(huán)境變量PASH中的,所以必須加上./才可執(zhí)行。
linux shell腳本執(zhí)行方法二: 以絕對(duì)路徑的方式去執(zhí)行bash shell腳本:
/data/shell/hello.sh
linux shell腳本執(zhí)行方法三: 直接使用bash 或sh 來(lái)執(zhí)行bash shell腳本:
cd /data/shell
bash hello.sh
或
cd /data/shell
sh hello.sh
注意,若是以方法三的方式來(lái)執(zhí)行,那么,可以不必事先設(shè)定shell的執(zhí)行權(quán)限,甚至都不用寫(xiě)shell文件中的第一行(指定bash路徑)。因?yàn)榉椒ㄈ菍ello.sh作為參數(shù)傳給sh(bash)命令來(lái)執(zhí)行的。這時(shí)不是hello.sh自己來(lái)執(zhí)行,而是被人家調(diào)用執(zhí)行,所以不要執(zhí)行權(quán)限。那么不用指定bash路徑自然也好理解了啊。
linux shell腳本執(zhí)行方法四: 在當(dāng)前的shell環(huán)境中執(zhí)行bash shell腳本:
cd /data/shell
. hello.sh
或
cd /data/shell
source hello.sh
前三種方法執(zhí)行shell腳本時(shí)都是在當(dāng)前shell(稱(chēng)為父shell)開(kāi)啟一個(gè)子shell環(huán)境,此shell腳本就在這個(gè)子shell環(huán)境中執(zhí)行。shell腳本執(zhí)行完后子shell環(huán)境隨即關(guān)閉,然后又回到父shell中。而方法四則是在當(dāng)前shell中執(zhí)行的。
用戶登錄時(shí),將會(huì)取得一個(gè) bash ,這個(gè) bash 在系統(tǒng)中有一個(gè)全局唯一的ID,也就是進(jìn)程的ID,使用命令 ps -ef 并配合 grep 來(lái)查看進(jìn)程ID。 ps -ef|grep bash ,此命令還能查看進(jìn)程對(duì)應(yīng)的父進(jìn)程ID,系統(tǒng)中所有進(jìn)程的祖先進(jìn)程都是INIT進(jìn)程(進(jìn)程ID=1),它是最先啟動(dòng)運(yùn)行的。
回到 bash 進(jìn)程,也就是我們的命令行界面,進(jìn)程的執(zhí)行都有其附屬的執(zhí)行環(huán)境,環(huán)境變量就屬于其中之一。并且環(huán)境變量是可以完全被子進(jìn)程繼承的,也就是說(shuō),子進(jìn)程可以使用父進(jìn)程的環(huán)境變量,但是不能使用父進(jìn)程的自定義變量。
簡(jiǎn)而言之: 子進(jìn)程繼承父進(jìn)程的環(huán)境變量,不繼承父進(jìn)程的自定義變量。
shell腳本有4種執(zhí)行方式,不同的執(zhí)行方式可能導(dǎo)致結(jié)果不一致
四種方式的執(zhí)行結(jié)果如下:
當(dāng)前標(biāo)題:執(zhí)行l(wèi)inux腳本命令行 linux執(zhí)行sh腳本的幾種方式
分享網(wǎng)址:http://jinyejixie.com/article22/ddogjjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)、網(wǎng)站制作、Google、網(wǎng)站設(shè)計(jì)公司、做網(wǎng)站、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
移動(dòng)網(wǎng)站建設(shè)知識(shí)