GNU/Linux >> Tutoriales Linux >  >> Linux

nohup:comando no encontrado

El comando nohup ("no colgar") evita que un proceso finalice cuando el usuario cierra la sesión. Por ejemplo, si un administrador inicia una secuencia de comandos de copia de seguridad y luego cierra la sesión del sistema, la secuencia de comandos dejará de ejecutarse. Al colocar el comando nohup delante del comando normal, la secuencia de comandos continuaría incluso después de que el administrador cerrara la sesión.

Sintaxis

La sintaxis del comando nohup es:

# nohup {command/script}

Si encuentra el siguiente error mientras ejecuta el comando nohup:

nohup: command not found

puede intentar instalar el siguiente paquete según su elección de distribución:

Distribución Comando
OS X instalación de preparación de coreutils
Debian apt-get install coreutils
Ubuntu apt-get install coreutils
Alpino apk agregar coreutils
Arco Linux pacman -S coreutils
Kali Linux apt-get install coreutils
Cent OS yum instalar coreutils
Fedora dnf instalar coreutils
Raspbian apt-get install coreutils

Ejemplos

1. Ejecutar nohup sin especificar un archivo de salida

Hagamos un ejemplo y probemos que realmente continúa funcionando después de que haya cerrado la sesión. Iniciaremos un script llamado script.sh. El contenido del guión es el siguiente:

# cat script.sh
#!/bin/sh
while(true)
do
	echo "Hello World!"
	sleep 10
done

Ejecutemos el script en backgroupd con el comando nohup:

# nohup script.sh & 
[1] 179 
$ nohup: appending output to `nohup.out`

Como puede ver arriba, no hemos especificado un archivo de salida. Por lo tanto, la salida estándar y el error estándar van por defecto al archivo nohup.out en el directorio desde donde se invocó el script. También el número 179 Especificó el ID de proceso (PID) del trabajo. Este PID se puede verificar en la salida del comando "ps -ef" como se muestra a continuación.

Ahora salga del shell, vuelva a iniciar sesión y ejecute el siguiente comando:

$ ps x | grep script.sh
179  ?   S N  0:01 sh /root/script.sh 
506  p2 S     0:00 grep script.sh

El guión sigue funcionando. Utilice “ps-ef | grep ps1” si su sistema no es compatible con ps x. También puede consultar el archivo de salida nohup.out para obtener más confirmación.

# cat nohup.out
Hello World!
Hello World!
Hello World!
Hello World!
...
NOTA :si ejecuta otro comando usando nohup, la salida se agrega al archivo nohup.out existente. Tenga cuidado al ejecutar varios comandos desde el mismo directorio, ya que todos los resultados se envían al mismo archivo nohup.out, lo que puede resultar confuso.

Ejecutar nohup especificando un archivo de salida

Ahora la secuencia de comandos anterior también se puede ejecutar con el comando nohup y especificar un archivo de salida personalizado como se muestra a continuación:

# nohup script.sh > /tmp/script.out 2>&1
[1] 14235

Conclusión

Si está ejecutando un proceso y no cree que se completará cuando cierre la sesión del día, use el comando nohup. Nohup continuará procesando cuando salga de su cuenta. Nohup significa sin colgar .


Linux
  1. ifrename:comando no encontrado

  2. netstat:comando no encontrado

  3. kubectl:comando no encontrado

  4. tvservice:comando no encontrado

  5. rm:comando no encontrado

aws-shell:comando no encontrado

id:comando no encontrado

w:comando no encontrado

df:comando no encontrado

du:comando no encontrado

nohup:comando no encontrado