Linux

我可以 nohup/screen 已經啟動的程序嗎?

  • June 7, 2019

我正在通過 SSH 對長時間執行的數據遷移腳本進行一些測試。假設我在下午 4 點左右開始執行腳本;現在,下午 6 點左右,我在詛咒自己沒有做這一切screen

有什麼方法可以“追溯”nohup一個過程,還是我需要讓我的電腦整夜線上?如果無法附加screen到/nohup我已經開始的程序,那為什麼?與父/子程序如何互動有關?(我不會接受至少不能解決“為什麼”問題的“否”答案——對不起;))

如果您使用的是 Bash,則可以執行disown -h job

否認

disown [-ar] [-h] [jobspec ...]

如果沒有選項,每個作業規範都會從活動作業表中刪除。如果-h給出該選項,則不會從表中刪除作業,但會被標記,以便在 shell 接收到 SIGHUP 時不會將 SIGHUP 發送到作業。如果 jobspec 不存在,也沒有提供-anor-r選項,則使用目前作業。如果未提供作業規範,則該-a 選項表示刪除或標記所有作業;沒有 jobspec 參數的-r選項將操作限制為正在執行的作業。

引用自:https://serverfault.com/questions/24425