Linux-nohup命令使用方法詳解
Linux-nohup命令使用方法

今天在終端頁面掛著跑任務(wù),被旁邊老哥教育了????說我這終端一不小心退出,任務(wù)就停了,讓我用nohup在后臺(tái)跑~(當(dāng)時(shí)一愣一愣的哈哈??????)
在此記錄一下nohup的使用方法,以后就知道啦~
1. 什么是 nohup?
nohup(no hang up別掛電話????)用于在用戶退出或注銷后繼續(xù)運(yùn)行命令。
通常,當(dāng)終端關(guān)閉時(shí),所有在該終端中運(yùn)行的進(jìn)程都會(huì)收到 SIGHUP 信號(hào)(掛起信號(hào)),并被終止。使用 nohup 可以避免這種情況。
2. 基本語法
nohup command [arguments] &
- command:要執(zhí)行的命令或程序。
- arguments:傳遞給命令的參數(shù)(可選)。
- &:將命令放入后臺(tái)執(zhí)行,允許用戶繼續(xù)使用終端。
- 長(zhǎng)時(shí)間運(yùn)行的任務(wù):例如數(shù)據(jù)處理、備份腳本等,需要在后臺(tái)運(yùn)行的任務(wù)。
- 遠(yuǎn)程會(huì)話:當(dāng)通過 SSH 連接到服務(wù)器時(shí),如果你開始了一個(gè)長(zhǎng)時(shí)間的任務(wù),可以使用
nohup來確保任務(wù)不會(huì)因網(wǎng)絡(luò)斷開而終止。
后臺(tái)運(yùn)行簡(jiǎn)單命令:
nohup sleep 300 &
- 后臺(tái)運(yùn)行
sleep命令,持續(xù) 300 秒,即使你退出終端,它也會(huì)繼續(xù)執(zhí)行。 后臺(tái)運(yùn)行腳本:
nohup ./my_script.sh &
my_script.sh會(huì)在后臺(tái)運(yùn)行,并且不會(huì)因?yàn)橥顺鼋K端而被中斷。 輸出重定向:
將輸出保存到文件(比如說跑任務(wù)時(shí)候的實(shí)時(shí)輸出、日志啥的。)
nohup ./my_script.sh > output.log 2>&1 &
> output.log將標(biāo)準(zhǔn)輸出重定向到output.log文件。2>&1將標(biāo)準(zhǔn)錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出,所有輸出(包括錯(cuò)誤信息)都會(huì)記錄在output.log中。- (好奇怪哈哈哈????就這么用吧,我看教我的老哥也是,幫我把任務(wù)日志重定向到自定義的一個(gè)文件里面,我在里面查到的跟在終端跑的時(shí)候的輸出是一樣的。)
如果不重定向輸出,nohup 會(huì)將所有輸出保存在當(dāng)前目錄的 nohup.out 文件中。如果該文件已經(jīng)存在,輸出將會(huì)追加到該文件中。
指定不同的輸出文件
也可以直接指定不同的輸出和錯(cuò)誤文件:
nohup ./my_script.sh > my_output.log 2> my_error.log &
- 標(biāo)準(zhǔn)輸出寫入
my_output.log,而錯(cuò)誤輸出寫入my_error.log。 查看后臺(tái)運(yùn)行的進(jìn)程
jobs
查看系統(tǒng)中所有進(jìn)程,可以使用 ps 命令:
ps aux | grep sleep
- grep是過濾哈~
- 列出所有包含
sleep的進(jìn)程。
終止進(jìn)程
找到進(jìn)程 ID (PID) 后,可以使用 kill 命令終止它:
首先,找到 PID:
ps aux | grep my_script.sh
然后,使用 kill 命令:
kill <PID>
如果進(jìn)程沒有響應(yīng),可以使用 kill -9 <PID> 強(qiáng)制終止。
到此這篇關(guān)于Linux-nohup命令使用方法的文章就介紹到這了,更多相關(guān)Linux nohup命令使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Shell $0, $#, $*, $@, $?, $$和命令行參數(shù)的使用
這篇文章主要介紹了Shell $0, $#, $*, $@, $?, $$和命令行參數(shù)的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
Shell expr命令進(jìn)行整數(shù)計(jì)算的實(shí)現(xiàn)
這篇文章主要介紹了Shell expr命令進(jìn)行整數(shù)計(jì)算的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
Shell腳本監(jiān)控目錄內(nèi)文件改動(dòng)
這篇文章主要介紹了Shell腳本監(jiān)控目錄內(nèi)文件改動(dòng),需要的朋友可以參考下2017-05-05
設(shè)置Linux系統(tǒng)的空閑等待時(shí)間TMOUT的方法
下面小編就為大家?guī)硪黄O(shè)置Linux系統(tǒng)的空閑等待時(shí)間TMOUT的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-03-03

