Comando Nohup en Linux

Al salir del shell de un sistema Linux, todos los procesos en ejecución suelen terminar o quedarse colgados. ¿Qué se puede hacer si se desea que los procesos sigan ejecutándose incluso al salir del shell o del terminal? Aquí es donde entra en juego el comando nohup .

Comando Nohup

Nohup, abreviatura de no hang up (no colgar), es un comando de los sistemas Linux que mantiene los procesos en ejecución incluso después de salir del shell o la terminal. Nohup impide que los procesos o trabajos reciban la señal SIGHUP (Signal Hang UP, señal de suspensión). Esta es una señal que se envía a un proceso al cerrar o salir de la terminal. En esta guía, analizamos el comando nohup y demostramos cómo se puede utilizar.

Sintaxis del comando Nohup

La sintaxis del comando Nohup es la siguiente:

nohup command arguments

O

nohup options

Veamos cómo entra en juego el comando.

Comprobando la versión de Nohup

Puedes comenzar verificando la versión de Nohup usando la sintaxis a continuación

nohup --version

Producción

Iniciar un proceso utilizando Nohup

Si desea mantener sus procesos o trabajos en ejecución, anteponga el comando con nohuplo que se muestra a continuación. Los trabajos seguirán ejecutándose en el shell y no se cerrarán al salir del shell o la terminal.

nohup ./hello.sh 

Salida De la salida anterior, la salida del comando se ha guardado para nohup.outverificar esta ejecución.

cat nohup.out

Salida Además, puede optar por redirigir la salida a un archivo diferente como se muestra

nohup ./hello.sh  output.txt

Una vez más, para ver el archivo ejecuta

cat output.txt

Salida Para redirigir a un archivo y al error estándar y salida, use el filename 21atributo como se muestra

nohup ./hello.sh  myoutput.txt 21 

Producción

Iniciar un proceso en segundo plano utilizando Nohup

Para iniciar un proceso en segundo plano, utilice el símbolo que se encuentra al final del comando. En este ejemplo, hacemos ping a google.com y lo enviamos al segundo plano.

nohup ping google.com 

Salida Para comprobar el proceso al reanudar el shell, utilice el pgrepcomando como se muestra

pgrep -a ping

Salida Si desea detener o matar el proceso en ejecución, utilice el killcomando seguido del ID del proceso como se muestra

kill 2565

Producción

Resumen

  1. Todos los procesos que se ejecutan utilizando el comando nohup ignorarán la señal SIGHUP incluso al salir del shell.
  2. Una vez que se inicia o ejecuta un trabajo utilizando el comando nohup, stdin no estará disponible para el usuario.
  3. De forma predeterminada, nohup.outse utiliza como archivo predeterminado para stdout y stderr.
SUSCRÍBETE A NUESTRO BOLETÍN 
No te pierdas de nuestro contenido ni de ninguna de nuestras guías para que puedas avanzar en los juegos que más te gustan.

Deja un comentario

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

Scroll al inicio