在啟動帶有輸出的進程後,如何從 SSH 登出/斷開連接以保持其運作?

在啟動帶有輸出的進程後,如何從 SSH 登出/斷開連接以保持其運作?

我今天從命令列運行了一個腳本(php,不確定這很重要),它有我想看的輸出,但我必須在它完成之前回家,而且我不知道如何在不殺死腳本的情況下退出。通常我只是關閉筆記型電腦(休眠),但腳本似乎沒有完成。

我可以點擊一些鍵盤組合來退出終端並保持腳本運行嗎?它也會列印一個日誌文件,以便我稍後檢查。

答案1

在關閉 shell 會話後讓腳本繼續運行的最直接方法是使用終端多工器程式。終端多工器將允許您同時執行多個 shell 會話,而無需主動連接到每個會話,即使在斷開(分離)它們之後也是如此。最受歡迎的 2 個是screentmux

我個人使用screen並且它對我來說效果非常好。您啟動一個screen會話,啟動程式/腳本,斷開連接(分離),然後稍後重新連接到分離的會話以查看情況如何。

安裝:

sudo apt-get install screen

要開始會話:

screen  

要從會話中斷開(分離):

Ctrl+A然後d

列出正在運行的會話:

screen -ls

若要重新連接到分離的會話,請使用下列輸出screen -ls

screen -r [pid.tty.host]

這些只是幫助您前進的基礎知識,但與往常一樣,man screen還有更多信息

相關內容