GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo trabajar con procesos en primer plano y en segundo plano en Linux

Un concepto importante para entender cuando se trabaja con el proceso de Linux es qué es el primer plano y fondo proceso y cómo controlarlos. En Linux, si ejecuta cualquier programa, se creará un proceso con una ID única (PID ) y, de forma predeterminada, el proceso se ejecuta en primer plano .

Tomemos un simple comando curl – cuando envía una solicitud para descargar un archivo zip a través de Internet, curl se ejecutará como primer plano proceso y todas las salidas se mostrarán en la terminal.

Hay dos pulsaciones de teclas importantes que debe comprender antes de trabajar con el fondo y primer plano proceso.

  • CTRL+Z – Esta pulsación de tecla detendrá el proceso en ejecución.
  • CTRL+C – Esta pulsación de tecla eliminará el proceso en ejecución y liberará memoria en RAM.

Proceso de primer plano de Linux

Un proceso cuando se inicia desde la terminal por defecto se ejecuta como un primer plano proceso. El primer plano El proceso no le permitirá usar la terminal a menos que se complete el proceso. En este caso, si necesita volver a acceder a su terminal, debe abrir una nueva ventana de terminal o detener el proceso en ejecución o eliminarlo.

También es importante tener en cuenta que cualquier proceso que se crea a través de la terminal se adjunta a la sesión de la terminal y el proceso finalizará una vez que se cierre la terminal. Esto se debe a que bash es el proceso principal y cualquier comando que ejecute en la terminal será el proceso secundario de bash, por lo que cuando cierre el proceso principal de la terminal (bash) terminará automáticamente todos sus procesos secundarios y los suyos propios.

A continuación se muestra un ejemplo del proceso de primer plano. Esto es solo un simple comando de suspensión eso devolverá el aviso al usuario solo después de que se haya completado.

$ sleep 10000

Ahora tengo pocas opciones para recuperar el control y regresar al aviso de la terminal. O tengo que cancelar o detener el proceso o abrir una nueva pestaña de terminal. Cuando detiene un proceso en ejecución presionando (CTRL+Z) obtendrá la salida como se muestra en la imagen de abajo.

Para obtener la lista de trabajos en ejecución o detenidos, puede ejecutar el siguiente comando.

$ jobs -l

En la imagen de arriba, puede ver el comando trabajos le da el proceso ID , qué comando envió, cuál es el estado del mismo. También obtendrá una ID de trabajo para cada proceso que envíe ([1], [2] [3], etc.).

Para iniciar un trabajo que está detenido o traer el trabajo en segundo plano al primer plano, ejecute el siguiente comando.

$ fg %4     

Donde %4 denota la identificación del trabajo que puede obtener del comando "jobs -l".

Proceso en segundo plano de Linux

El proceso en segundo plano ejecuta su proceso en segundo plano y no tomará el control de la indicación de su terminal. Puede iniciar una sesión y es libre de usar su terminal. Para enviar un comando como proceso en segundo plano, debe agregar & símbolo al final del comando.

$ sleep 50000 &

Ejecute el comando de trabajos para obtener la lista de trabajos.

$ jobs -l

En la imagen a continuación, puede ver Id. de trabajo [5] se asigna al trabajo y & el símbolo indica que se ha enviado y se está ejecutando como un trabajo en segundo plano.

Puede iniciar cualquier trabajo detenido en segundo plano directamente ejecutando el siguiente comando.

$ bg %2 

Donde %2 denota la identificación del trabajo que puede obtener de "jobs -l ” comando.

Eso es todo por este artículo. Si hay algún comentario o sugerencia, déjalo en el cuadro de comentarios.


Linux
  1. Cómo Navidadizar su Terminal Linux y Shell

  2. Cómo administrar trabajos en segundo plano de Linux con los comandos fg y bg

  3. Cómo encontrar y matar el proceso Zombie en Linux

  4. ¿Cómo suspender y poner en primer plano un proceso en segundo plano?

  5. Ejecución de comandos de Linux en segundo plano y en primer plano

Cómo suspender un proceso y reanudarlo más tarde en Linux

Cómo localizar y matar un proceso con terminal Linux

Cómo trabajar con enlaces duros y suaves en Linux

Cómo instalar y usar Terminator Terminal en Linux

Cómo enviar procesos a segundo plano en Linux

Cómo rastrear y rastrear un proceso de Linux