Linux
重新設置以篩選通過管道連接的兩個程序
假設在 PuTTY 連接中我開始
mysqldump --host host1 --databases db1 db2 db3 | mysql
它創建了兩個程序:
mysqldump
PID 5800 和mysql
PID 5801。當我想關閉 PuTTY 並且以後仍然可以返回它們時,是否可以讓正在執行的程序繼續執行?我在這裡找到了一些答案,這些答案涉及單個程序以及如何使用
reptyr
它來重新父級screen
,但我關心的是如何處理我的兩個並行執行的程序。
讓您忙碌的會話繼續執行。
打開另一個新會話。
tmux
即使您關閉或失去 ssh 連接,也可以使用該應用程序。tmux
類似於,screen
可以說要好一些。sudo apt install tmux tmux
現在是關鍵步驟,竊取程序的終端。
sudo apt install reptyr ps uw # find one of the PIDs to save, any will do reptyr -T the_PID
我注意到該方法的一個副作用
reptyr -T
。您還可以在執行的應用程序中擷取舊外殼。如果您exit
現在,您將返回到 tmux/screen 的原始外殼。再次使用exit
,您將返回登錄 shell。