Risposte:
Ho trovato questa risposta su serverfault dal conte :
Tuttavia, per il vostro problema attuale, c'è un'altra cosa che si potrebbe provare: dopo aver lanciato il vostro lavoro dal terminale, sfondo digitando ctrl- ze poi
bg
.
Dopo di che, staccare il lavoro dalla shell genitore E '- inbash
:disown -h %<jobid>
. Successivamente, è possibile chiudere in sicurezza il terminale e il lavoro continuerà a essere eseguito.
E questo dalla stessa domanda di Rob Wells :
$ screen -S my_process
$ retty $(pgrep my_process)
/redraw
Trovato un duplicato in ServerFault .
Un'altra soluzione non trovata in quel post sta usando retty dopo aver iniziato una sessione di schermo.
Dai un'occhiata a reptyr , che fa esattamente questo. La pagina di github contiene tutte le informazioni.
reptyr - Uno strumento per "ripassare"
programmi.
reptyr è un'utilità per prendere un programma in esecuzione esistente e collegarlo a un nuovo terminale. Ha iniziato un processo di lunga durata su ssh, ma devi partire e non vuoi interromperlo? Basta avviare una schermata, usare reptyr per afferrarla, quindi uccidere la sessione ssh e andare a casa.
USO
reptyr PID
"reptyr PID" afferrerà il processo con ID PID e lo collegherà al terminale corrente.
Dopo il collegamento, il processo prenderà l'input e scriverà l'output sul nuovo terminale, inclusi ^ C e ^ Z. (Sfortunatamente, se lo sfondo, dovrai comunque eseguire "bg" o "fg" nel vecchio terminale. Questo è probabilmente impossibile da risolvere in modo ragionevole senza patchare la shell.)