Saltar al contenido

Traiga el trabajo de nohup a primer plano

Solución:

nohup no desconecta un comando de la terminal, hace que su script ignore SIGHUPy redireccionamientos stdout/stderr a un archivo nohup.out, para que el comando pueda seguir ejecutándose en segundo plano después de cerrar la sesión.

nohup no pone automáticamente el comando que ejecuta en segundo plano. Uno debe hacer eso explícitamente, terminando la línea de comando con un &.

$ nohup ./script.sh &
[1] 3390
$ nohup: ignoring input and appending output to ‘nohup.out’

jobs Puede imprimir trabajos en ejecución y su estado. Si el comando jobs no puede encontrarlo, entonces ya no es un proceso hijo de ese shell.

$ jobs 
[1]+  Running                 nohup ./script.sh &

Se puede devolver un trabajo en segundo plano al primer plano en bash usando fg incluso si se ejecuta con nohup. Pero eso no cambiará el redirección de salida, que seguirá yendo al archivo nohup.out.

$ fg
nohup ./script.sh

Si cierra el shell / terminal o cierra la sesión, su comando ya no es un hijo de ese shell. Pertenece a init proceso. Si buscas en pstree verá que ahora es propiedad del proceso 1 (init). Eso no puede volver al primer plano porque el primer plano ya no existe.

Si desea iniciar un script, ejecutarlo sin que la salida moleste a su terminal y luego abrirlo más tarde para interactuar con él, es posible que desee echar un vistazo a un multiplexor de terminal. Dependiendo de su sistema, recomendaría tmux o screen. Puede encontrar información sobre cómo usarlos en los enlaces a continuación:

tmux:

  • Una cartilla de Tmux
  • Una guía rápida y sencilla de tmux
  • Hoja de trucos y referencia rápida de Tmux

pantalla:

  • Pantalla – Documentación de la comunidad de Ubuntu
  • Pantalla GNU: introducción y tutorial para principiantes
  • atajos de teclado de pantalla

editar: enlaces agregados para los cebadores tmux

Secundaré el uso de un multiplexor de terminal, pero tmux, no pantalla. La pantalla está, para todos los efectos, sin mantenimiento. Su configuración es un arte oscuro, probablemente registrado por primera vez en un apéndice del Necronomicon. Intentar escribir tu propia configuración es como un vistazo de Cthulu. Seriamente. Mire a su alrededor los archivos .screenrc de las personas. Sin duda, hay formas de mediar en la abominación de la pantalla de un archivo de configuración. Byobu hace un trabajo admirable como el velo entre los usuarios mortales y el código impío. Viene con colores sensibles, una interfaz de menú y, quizás lo más importante, una barra de estado.

Pero como dije, recomiendo tmux en su lugar. Todavía requiere una configuración menor, pero está bien documentado y su archivo de configuración no se verá como un galimatías. Además, comienzas con colores y una barra de estado. Compare mis archivos screenrc y tmux.conf:

  • screenrc
  • tmux.conf
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *