有兩種方式:一種方式是根據運行級別配置服務,一種方式是執(zhí)行本地特殊配置。
創(chuàng)新互聯(lián)公司-專業(yè)網站定制、快速模板網站建設、高性價比長葛網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式長葛網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋長葛地區(qū)。費用合理售后完善,10多年實體公司更值得信賴。
舉例,任務是啟動時運行命令cvslockd:
方式一:
1、 建立自啟動腳本/etc/rc.d/init.d/cvslockd,內容為:
#!/bin/bash
/usr/local/bin/cvslockd
設置文件的屬性為可執(zhí)行:
#chmod +x /etc/rc.d/init.d/cvslockd
2、查看計算機運行級別,在文件/etc/inittab里看到id:5:initdefault:,則此系統(tǒng)運行級別為5;
3. 到/etc/rc5.d目錄下,把你要執(zhí)行的可執(zhí)行文件做一個軟連接,而且在命名的時候要以大寫S字母開頭,S之后的數字大小代表執(zhí)行順序的先后,數字越大越后執(zhí)行。
#ln -s /etc/rc.d/init.d/cvslockd /etc/rc5.d/S100cvslockd
#ln -s /etc/rc.d/init.d/cvslockd /etc/rc0.d/K20cvslockd
方式二:
在/etc/rc.d/rc.local 添加 exec /usr/local/bin/cvslockd
該方式是在最后啟動cvslockd。
在Linux下,如果你需要執(zhí)行shell腳本,那么應該使用那個命令呢?下面由我為大家整理了linux shell腳本執(zhí)行命令的相關知識,希望對大家有幫助!
linux shell腳本執(zhí)行
linux shell腳本執(zhí)行方法一: 切換到shell腳本所在的目錄(此時,稱為工作目錄)執(zhí)行shell腳本:
cd /data/shell
./hello.sh
./的意思是說在當前的工作目錄下執(zhí)行hello.sh。如果不加上./,bash可能會響應找到不到hello.sh的錯誤信息。因為目前的工作目錄(/data/shell)可能不在執(zhí)行程序默認的搜索路徑之列,也就是說,不在環(huán)境變量PASH的內容之中。查看PATH的內容可用 echo $PASH 命令?,F在的/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í)行,那么,可以不必事先設定shell的執(zhí)行權限,甚至都不用寫shell文件中的第一行(指定bash路徑)。因為方法三是將hello.sh作為參數傳給sh(bash)命令來執(zhí)行的。這時不是hello.sh自己來執(zhí)行,而是被人家調用執(zhí)行,所以不要執(zhí)行權限。那么不用指定bash路徑自然也好理解了啊。
linux shell腳本執(zhí)行方法四: 在當前的shell環(huán)境中執(zhí)行bash shell腳本:
cd /data/shell
. hello.sh
或
cd /data/shell
source hello.sh
前三種方法執(zhí)行shell腳本時都是在當前shell(稱為父shell)開啟一個子shell環(huán)境,此shell腳本就在這個子shell環(huán)境中執(zhí)行。shell腳本執(zhí)行完后子shell環(huán)境隨即關閉,然后又回到父shell中。而方法四則是在當前shell中執(zhí)行的。
原文及更新:
直接在/etc/rc.local(/etc/rc.d/rc.local)文件中添加即可
上面這腳本實際上在使用時出現了問題, /home/neucrack/software/ss/start_ss_local.sh 這個命令始終沒有被執(zhí)行,原因是 /home/neucrack/software/ss/start_kcptun_client.sh 中的命令阻塞了進程,導致后面一句始終沒有執(zhí)行,可以將他們分別放到后臺執(zhí)行就行了,如何在后臺執(zhí)行可以看文章最后一部分
也可以自己手動在rc*.d中建立軟連接
桌面系統(tǒng)搜索 啟動 ,打開啟動管理器 添加刪除即可
一般有以下幾種方法:
1)在輸入命令的最前面加上 nohup 命令
如 nohup your_command 這樣命令在你退出后仍然會在后臺執(zhí)行
2) setsid 命令
setsid your_command 該命令的結果是使你所運行的命令的父進程為init,所以只有關機該進程才會停止
3) (your_command )
就是用括號將你的命令括起來,這樣做也是使命令的父進程為init
4) disown
當你在命令行下輸入 your_command 后命令就在后臺執(zhí)行了,然后執(zhí)行jobs命令,該命令會列出當前正在后臺執(zhí)行的命令。例如輸入命令“top”
然后執(zhí)行"jobs"
輸出結果是
[1] + Suspended (tty output) top
注意行開頭方括號內的數字,該數字叫做jobspec,是給當前后臺運行的job的編號。這是你只要在命令行下輸入"disown -h 1" 后臺運行的top命令就不會受到hangup信號的影響了。
5)使用 screen 命令
在命令行下輸入screen命令就開啟了一個screen進程,它就好像是一個全新的命令運行環(huán)境,在該環(huán)境中你可以像在正常的terminal下那樣執(zhí)行
命令,但是這個screen是不受其父進程的hangup信號的影響的,既然screen不受其父進程影響,當你意外掉線或者退出系統(tǒng)時,在screen
中仍在執(zhí)行的命令仍然會繼續(xù)執(zhí)行。關于screen命令的使用方法你可以再去查閱相關資料。