原文及更新:
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供泗陽網(wǎng)站建設(shè)、泗陽做網(wǎng)站、泗陽網(wǎng)站設(shè)計(jì)、泗陽網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、泗陽企業(yè)網(wǎng)站模板建站服務(wù),十年泗陽做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
直接在/etc/rc.local(/etc/rc.d/rc.local)文件中添加即可
上面這腳本實(shí)際上在使用時出現(xiàn)了問題, /home/neucrack/software/ss/start_ss_local.sh 這個命令始終沒有被執(zhí)行,原因是 /home/neucrack/software/ss/start_kcptun_client.sh 中的命令阻塞了進(jìn)程,導(dǎo)致后面一句始終沒有執(zhí)行,可以將他們分別放到后臺執(zhí)行就行了,如何在后臺執(zhí)行可以看文章最后一部分
也可以自己手動在rc*.d中建立軟連接
桌面系統(tǒng)搜索 啟動 ,打開啟動管理器 添加刪除即可
一般有以下幾種方法:
1)在輸入命令的最前面加上 nohup 命令
如 nohup your_command 這樣命令在你退出后仍然會在后臺執(zhí)行
2) setsid 命令
setsid your_command 該命令的結(jié)果是使你所運(yùn)行的命令的父進(jìn)程為init,所以只有關(guān)機(jī)該進(jìn)程才會停止
3) (your_command )
就是用括號將你的命令括起來,這樣做也是使命令的父進(jìn)程為init
4) disown
當(dāng)你在命令行下輸入 your_command 后命令就在后臺執(zhí)行了,然后執(zhí)行jobs命令,該命令會列出當(dāng)前正在后臺執(zhí)行的命令。例如輸入命令“top”
然后執(zhí)行"jobs"
輸出結(jié)果是
[1] + Suspended (tty output) top
注意行開頭方括號內(nèi)的數(shù)字,該數(shù)字叫做jobspec,是給當(dāng)前后臺運(yùn)行的job的編號。這是你只要在命令行下輸入"disown -h 1" 后臺運(yùn)行的top命令就不會受到hangup信號的影響了。
5)使用 screen 命令
在命令行下輸入screen命令就開啟了一個screen進(jìn)程,它就好像是一個全新的命令運(yùn)行環(huán)境,在該環(huán)境中你可以像在正常的terminal下那樣執(zhí)行
命令,但是這個screen是不受其父進(jìn)程的hangup信號的影響的,既然screen不受其父進(jìn)程影響,當(dāng)你意外掉線或者退出系統(tǒng)時,在screen
中仍在執(zhí)行的命令仍然會繼續(xù)執(zhí)行。關(guān)于screen命令的使用方法你可以再去查閱相關(guān)資料。
在Linux下,如果你需要執(zhí)行shell腳本,那么應(yīng)該使用那個命令呢?下面由我為大家整理了linux shell腳本執(zhí)行命令的相關(guān)知識,希望對大家有幫助!
linux shell腳本執(zhí)行
linux shell腳本執(zhí)行方法一: 切換到shell腳本所在的目錄(此時,稱為工作目錄)執(zhí)行shell腳本:
cd /data/shell
./hello.sh
./的意思是說在當(dāng)前的工作目錄下執(zhí)行hello.sh。如果不加上./,bash可能會響應(yīng)找到不到hello.sh的錯誤信息。因?yàn)槟壳暗墓ぷ髂夸?/data/shell)可能不在執(zhí)行程序默認(rèn)的搜索路徑之列,也就是說,不在環(huán)境變量PASH的內(nèi)容之中。查看PATH的內(nèi)容可用 echo $PASH 命令。現(xiàn)在的/data/shell就不在環(huán)境變量PASH中的,所以必須加上./才可執(zhí)行。
linux shell腳本執(zhí)行方法二: 以絕對路徑的方式去執(zhí)行bash shell腳本:
/data/shell/hello.sh
linux shell腳本執(zhí)行方法三: 直接使用bash 或sh 來執(zhí)行bash shell腳本:
cd /data/shell
bash hello.sh
或
cd /data/shell
sh hello.sh
注意,若是以方法三的方式來執(zhí)行,那么,可以不必事先設(shè)定shell的執(zhí)行權(quán)限,甚至都不用寫shell文件中的第一行(指定bash路徑)。因?yàn)榉椒ㄈ菍ello.sh作為參數(shù)傳給sh(bash)命令來執(zhí)行的。這時不是hello.sh自己來執(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腳本時都是在當(dāng)前shell(稱為父shell)開啟一個子shell環(huán)境,此shell腳本就在這個子shell環(huán)境中執(zhí)行。shell腳本執(zhí)行完后子shell環(huán)境隨即關(guān)閉,然后又回到父shell中。而方法四則是在當(dāng)前shell中執(zhí)行的。
當(dāng)我們在終端或控制臺工作時,可能不希望由于運(yùn)行一個作業(yè)而占住了屏幕,因?yàn)榭赡苓€有更重要的事情要做,比如閱讀電子郵件。對于密集訪問磁盤的進(jìn)程,我們更希望它能夠在每天的非負(fù)荷高峰時間段運(yùn)行(例如凌晨)。為了使這些進(jìn)程能夠在后臺運(yùn)行,也就是說不在終端屏幕上運(yùn)行,有幾種選擇方法可供使用。
:當(dāng)在前臺運(yùn)行某個作業(yè)時,終端被該作業(yè)占據(jù);可以在命令后面加上 實(shí)現(xiàn)后臺運(yùn)行。例如:sh test.sh
適合在后臺運(yùn)行的命令有f i n d、費(fèi)時的排序及一些s h e l l腳本。在后臺運(yùn)行作業(yè)時要當(dāng)心:需要用戶交互的命令不要放在后臺執(zhí)行,因?yàn)檫@樣你的機(jī)器就會在那里傻等。不過,作業(yè)在后臺運(yùn)行一樣會將結(jié)果輸出到屏幕上,干擾你的工作。如果放在后臺運(yùn)行的作業(yè)會產(chǎn)生大量的輸出,最好使用下面的方法把它的輸出重定向到某個文件中:
這樣,所有的標(biāo)準(zhǔn)輸出和錯誤輸出都將被重定向到一個叫做out.file 的文件中。
PS:當(dāng)你成功地提交進(jìn)程以后,就會顯示出一個進(jìn)程號,可以用它來監(jiān)控該進(jìn)程,或殺死它。(ps -ef | grep 進(jìn)程號 或者 kill -9 進(jìn)程號)
nohup:使用命令后,作業(yè)被提交到后臺運(yùn)行,當(dāng)前控制臺沒有被占用,但是一但把當(dāng)前控制臺關(guān)掉(退出帳戶時),作業(yè)就會停止運(yùn)行。nohup命令可以在你退出帳戶之后繼續(xù)運(yùn)行相應(yīng)的進(jìn)程。nohup就是不掛起的意思( no hang up)。該命令的一般形式為:
如果使用nohup命令提交作業(yè),那么在缺省情況下該作業(yè)的所有輸出都被重定向到一個名為nohup.out的文件中,除非另外指定了輸出文件:
使用了nohup之后,很多人就這樣不管了,其實(shí)這樣有可能在當(dāng)前賬戶非正常退出或者結(jié)束的時候,命令還是自己結(jié)束了。所以在使用nohup命令后臺運(yùn)行命令之后,需要使用exit正常退出當(dāng)前賬戶,這樣才能保證命令一直在后臺運(yùn)行。
ctrl + z :可以將一個正在前臺執(zhí)行的命令放到后臺,并且處于暫停狀態(tài)。
Ctrl+c :終止前臺命令。
jobs: 查看當(dāng)前有多少在后臺運(yùn)行的命令。 jobs -l選項(xiàng)可顯示所有任務(wù)的PID,jobs的狀態(tài)可以是running, stopped, Terminated。但是如果任務(wù)被終止了(kill),shell 從當(dāng)前的shell環(huán)境已知的列表中刪除任務(wù)的進(jìn)程標(biāo)識。
21解析:
擴(kuò)展鏈接:如何寫高效的代碼,和代碼優(yōu)化方法
網(wǎng)頁題目:linux正在執(zhí)行命令 linux停留在開機(jī)畫面
標(biāo)題網(wǎng)址:http://chinadenli.net/article16/dogcddg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、網(wǎng)站導(dǎo)航、企業(yè)建站、網(wǎng)站建設(shè)、做網(wǎng)站、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)