被放棄的工作仍在退出時停止

被放棄的工作仍在退出時停止

我連接到遠端伺服器,並運行以下命令:

cat /dev/zero > /dev/null & disown %-

然後我這樣做logout,並重新連接,並ps顯示沒有cat進程正在運行。為什麼?

答案1

這個指令對我有效。看來需要消耗很多資源。也許你想嘗試:

sleep 999 & disown %-

ps aux | grep sleep並在重新登入後執行 a 。

但是,如果您知道要在啟動該進程之前否認該進程,則可以使用 nohup:

nohup sleep 999

答案2

使用%%%+用於「目前」(最近後台)作業。%-是為了以前的作業,這是第二個最近停止或後台運行的作業。如果只有一份工作,它們的意思是一樣的。但是,如果您在 shell 會話或腳本的早期部分留下了一些後台作業,那麼您使用的方式%-可能不是針對您認為的作業。

相關內容