GNU/Linux >> Tutoriales Linux >  >> Linux

5 formas de ejecutar comandos UNIX/Linux (y scripts de shell) en segundo plano

Pregunta: Sé cómo ejecutar un comando de Unix en primer plano. ¿Puede explicarme cómo puedo ejecutar un comando de Linux en segundo plano?

Respuesta: Puede usar uno de los 5 métodos explicados en este artículo para ejecutar un comando de Linux o un script de shell en segundo plano.

1. Ejecute un comando en segundo plano usando &

Puede ejecutar un comando (o script de shell) como un trabajo en segundo plano agregando un ampersand al comando como se muestra a continuación.

$ ./my-shell-script.sh &

Lea Bg, Fg, &, Ctrl-Z:5 ejemplos para administrar trabajos en segundo plano de Unix para comprender más detalles.

2. Ejecuta un comando en segundo plano usando nohup

Después de ejecutar un comando (o script de shell) en segundo plano usando &, si cierra la sesión, el comando se eliminará. Para evitar eso, debe usar nohup como se muestra a continuación.

$ nohup ./my-shell-script.sh &

Lea Unix Nohup:Ejecute un comando o script de shell incluso después de cerrar sesión para comprender más detalles.

3. Ejecutar un comando usando el comando de pantalla

Después de ejecutar un comando en segundo plano usando nohup y &, el comando se ejecutará incluso después de cerrar la sesión. Pero no puede volver a conectarse a la misma sesión para ver exactamente lo que sucede en la pantalla. Para hacer eso, debe usar el comando de pantalla.

El comando de pantalla de Linux ofrece la capacidad de desconectar una sesión que está ejecutando algún proceso y luego adjuntarlo en un momento posterior. Cuando vuelva a conectar la sesión más tarde, sus terminales estarán allí exactamente como los dejó antes.

Consulte Ejemplos de comandos de pantalla:Obtener el control de la terminal de Linux/Unix para comprender más detalles.

4. Ejecutar un comando como un trabajo por lotes usando at

Con el comando at puede programar un trabajo para que se ejecute en una fecha y hora determinadas. Por ejemplo, para ejecutar el script de respaldo mañana a las 10 a. m., haga lo siguiente.

$ at -f backup.sh 10 am tomorrow

Lea Comprender los comandos at, atq, atrm, batch usando 9 ejemplos para obtener más detalles.

Ejecutar ciertos trabajos en modo por lotes requiere que ciertas opciones estén habilitadas. Los siguientes artículos darán algo de claridad al respecto.

  • Cómo capturar la salida del comando superior de Unix en un archivo en formato legible
  • Calculadora de línea de comandos de Unix bc en modo por lotes
  • Cómo ejecutar SSH y SCP en modo por lotes (solo cuando el inicio de sesión sin contraseña está habilitado)

5. Ejecutar un comando continuamente usando reloj

Para ejecutar un comando continuamente en un cierto intervalo, use el comando de vigilancia como se muestra a continuación.

$ watch df -h

Lea Observar:Repita los comandos de Unix o Shell-Scripts cada N segundos para comprender más detalles.


Linux
  1. Ver comandos y tareas con el comando watch de Linux

  2. 2 formas de volver a ejecutar los últimos comandos ejecutados en Linux

  3. Comandos de Linux:descripción general y ejemplos

  4. Comandos de Linux:trabajos, bg y fg

  5. Ejecutar comandos de Shell desde el programa que se ejecuta en WINE

Cómo ejecutar automáticamente secuencias de comandos y comandos de inicio de Linux

Cómo agregar comandos de Linux a la cola y ejecutarlos uno por uno

Diferentes formas de repetir su último comando en Linux

Comando TAR de Linux y Unix

4 formas de transferir archivos y directorios en Linux

Comandos Zip y Unzip en Linux/Unix