A veces me olvido de ejecutar un programa en una sesión de pantalla y no puedo detenerlo en el medio, y sé que tomará mucho tiempo.
¿Hay alguna manera de detectar un proceso que ya se está ejecutando sin reiniciarlo?
Encontré esta respuesta en serverfault de earl :
Sin embargo, para su problema real, no es otra cosa que podría intentar: después de haber lanzado su trabajo desde el terminal, antecedentes, escribiendo ctrl- zy luego
bg
.
Después de eso, separar el trabajo de él es shell padre - enbash
:disown -h %<jobid>
. Después de eso, puede cerrar el terminal de manera segura y el trabajo continuará ejecutándose.
Y esta de la misma pregunta de Rob Wells :
$ screen -S my_process
$ retty $(pgrep my_process)
/redraw
Encontré un duplicado en ServerFault .
Otra solución que no se encuentra en esa publicación es usar retty después de comenzar una sesión de pantalla.
fuente
Echa un vistazo a reptyr , que hace exactamente eso. La página de github tiene toda la información.
fuente