久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Linux中如何關(guān)閉終端或?qū)崿F(xiàn)程序后臺(tái)運(yùn)行

174次閱讀
沒有評論

共計(jì) 1121 個(gè)字符,預(yù)計(jì)需要花費(fèi) 3 分鐘才能閱讀完成。

這篇文章主要介紹 Linux 中如何關(guān)閉終端或?qū)崿F(xiàn)程序后臺(tái)運(yùn)行,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

nohup

最常用的命令就是【nohup】,從名字就看出是否掛起運(yùn)行命令,關(guān)閉終端或者退出某個(gè)賬號,進(jìn)程也繼續(xù)保持運(yùn)行狀態(tài),同樣要配合【】符號一起使用。

用法:nohup Command [Arg hellip;] []

$ nohup sh test.sh   #  直接關(guān)閉當(dāng)前終端,再打開一個(gè)查看  $ ps -few|grep test.sh

從上面的可以看出,我們運(yùn)行的 test.sh 的父進(jìn)程變成了【PID 1】.,由 linux 主進(jìn)程接管。

setsid

nohup 是忽略 SIGHUP 信號,有沒其他的思路嗎?

setip 命令可以重新打開了會(huì)話,繼承了父進(jìn)程組的 ID,脫離了父進(jìn)程的控制。從下圖可以看到,test.sh 腳本的父進(jìn)程已經(jīng)是 init  1,此時(shí)不管關(guān)閉還是退出終端,已經(jīng)和后臺(tái)的程序沒有關(guān)系了。

$ setsid sh test.sh

setsid 和 nohup 還有一個(gè)區(qū)別是,不需要使用 后臺(tái)符號。

exit

使用 exit 命令退出終端,我們的程序還是會(huì)繼續(xù)運(yùn)行,這是為什么呢?

這是因?yàn)槭褂?exit 命令退出終端時(shí)不會(huì)向終端所屬任務(wù)發(fā) SIGHUP 信號,是 huponexit 配置項(xiàng)控制的,默認(rèn)是 off,可以使用 shopt   命令查看。

[root@api ~]# shopt |grep huponexit huponexit off

將 huponexit 配置成 on,再次使用 exit 命令退出,所屬的任務(wù)就會(huì)跟隨退出。

[root@api ~]# shopt -s huponexit [root@api ~]# shopt |grep huponexit huponexit on

trap

trap 命令 linux 內(nèi)置的命令,接收到指定信號時(shí)將要采取的行動(dòng),后是要處理的信號名,常見的信號如下:

當(dāng)一個(gè)腳本要后臺(tái),同樣不希望終端退出而關(guān)閉程序,我們可以在的腳本中增加 trap 命令,來忽略 SIGHUP 信號 (掛起進(jìn)程)。

 #!/bin/sh trap   HUP while true;do date   /root/test.txt sleep 1 done

Linux screen 命令用于多重視窗管理程序,它可以創(chuàng)建一個(gè)終端,讓程序在里面運(yùn)行

screen sh test.sh 

從示例可以看出,test 腳本的父進(jìn)程是 screen 終端進(jìn)程,而 screen 終端的父進(jìn)程 PID1,同樣完成了后臺(tái)進(jìn)程的運(yùn)行。

以上是“Linux 中如何關(guān)閉終端或?qū)崿F(xiàn)程序后臺(tái)運(yùn)行”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-08-25發(fā)表,共計(jì)1121字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 鄂伦春自治旗| 天峨县| 资源县| 天水市| 泽库县| 鹿泉市| 南昌县| 湖南省| 民丰县| 泸水县| 崇阳县| 社旗县| 琼海市| 浮梁县| 泾川县| 策勒县| 东乌珠穆沁旗| 贺州市| 广饶县| 中西区| 莱芜市| 临汾市| 英山县| 和田县| 江孜县| 苏尼特左旗| 沈阳市| 鄱阳县| 莱阳市| 枞阳县| 成武县| 赣州市| 济源市| 南城县| 海宁市| 湖口县| 蒙自县| 潮州市| 高邮市| 雅安市| 淮南市|