怎么讓 Linux 進(jìn)程在后臺(tái)運(yùn)行?
點(diǎn)擊關(guān)注公眾號(hào),Java干貨及時(shí)送達(dá)
1.命令簡介
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í)行,需要放在命令的最后面。
另外,關(guān)注公眾號(hào)Java技術(shù)棧,在后臺(tái)回復(fù):面試,可以獲取我整理的 Linux 系列面試題和答案,非常齊全。
原文鏈接:https://blog.csdn.net/K346K346/article/details/79985071
版權(quán)聲明:本文為CSDN博主「戀喵大鯉魚」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。






關(guān)注Java技術(shù)棧看更多干貨


