1.命令簡(jiǎn)介
nohup
的作用可以將程序以忽略掛起信號(hào)(SIGHUP)的方式運(yùn)行。常見的用法是和 &
命令一同使用,將命令放置到后臺(tái)運(yùn)行,即使終端掛掉,進(jìn)程會(huì)忽略掛起信號(hào),繼續(xù)運(yùn)行。
將程序放到后臺(tái)運(yùn)行,一般有兩種方式:
(1)command &
:后臺(tái)運(yùn)行,關(guān)掉終端會(huì)停止運(yùn)行。
(2)nohup command &
:后臺(tái)運(yùn)行,關(guān)掉終端也會(huì)繼續(xù)運(yùn)行。
注意:
(1)如果使用nohup執(zhí)行程序未顯示進(jìn)行標(biāo)準(zhǔn)輸出重定向,則標(biāo)準(zhǔn)輸出默認(rèn)重定向當(dāng)前工作目錄的 nohup.out
文件中。如果當(dāng)前工作目錄的 nohup.out
文件不可寫,輸出重定向到 $HOME/nohup.out
文件中。如果沒有文件能創(chuàng)建或打開用于追加,那么 command 參數(shù)指定的命令不可調(diào)用。
(2)如果標(biāo)準(zhǔn)錯(cuò)誤未顯示重定向,那么標(biāo)準(zhǔn)錯(cuò)誤默認(rèn)重定向到與標(biāo)準(zhǔn)輸出相同的文件。
2.命令格式
nohup COMMAND [ARGS]
nohup OPTION
3選項(xiàng)說明
--help
顯示幫助信息并退出
--version
顯示版本信息并退出
4.常用示例
(1)使用nohup
命令提交作業(yè),那么在缺省情況下該作業(yè)的所有輸出都被重定向到一個(gè)名為nohup.out
的文件中,除非另外指定了輸出文件。
nohup ./test.sh &
(2)標(biāo)準(zhǔn)輸出與標(biāo)準(zhǔn)錯(cuò)誤輸出重定向。
nohup ./test.sh > test.log 2>&1 &
(3)指定輸出文件, 輸出被重定向到output.txt文件中
[deng@itcast ~]$ nohup bash a.sh &> error.txt
[deng@itcast ~]$
注意:
(1)2>&1
標(biāo)識(shí)標(biāo)準(zhǔn)錯(cuò)誤輸出重定向等同于標(biāo)準(zhǔn)輸出重定向,即標(biāo)準(zhǔn)錯(cuò)誤輸出也重定向到文件test.log;
(2)&
命令是命令放在后臺(tái)執(zhí)行,需要放在命令的最后面。
?
本文為「戀喵大鯉魚」的原創(chuàng)文章
本文摘自 :https://blog.51cto.com/j