Control de trabajos (bg, fg, jobs)
Domine la gestión de procesos en segundo y primer plano: pause, reanude y liste trabajos dentro de su sesión de shell.
Control de trabajos (bg, fg, jobs) es una lección gratuita de DevOps Bootcamp en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de DevOps Bootcamp, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de DevOps Bootcamp incluye 4 lecciones en total.
¿Qué es el control de trabajos?
¡Le damos la bienvenida al control de trabajos! Esta potente función del shell de Linux le permite gestionar programas en ejecución sin cerrar el terminal ni abrir otros.
Considérelo como una forma de multitarea para la línea de comandos. Puede pausar una tarea, moverla al segundo plano o devolverla al primer plano.
Primer plano frente a segundo plano
Cuando ejecuta un comando, normalmente se ejecuta en primer plano. Esto significa que toma el control de su terminal y no puede escribir nuevos comandos hasta que termina.
Sin embargo, un proceso en segundo plano se ejecuta de forma independiente. Libera su terminal para que pueda seguir trabajando en otras cosas mientras se ejecuta.
Pausar un proceso (Ctrl+Z)
Para pausar un proceso en primer plano que se esté ejecutando, use el atajo de teclado Ctrl+Z. Esto envía una señal SIGTSTP que suspende el proceso.
El proceso no termina; se convierte en un trabajo «detenido» y espera a que le indique qué hacer a continuación.
Ver sus trabajos (jobs)
Una vez que ha pausado un proceso (o ha enviado uno al segundo plano), puede ver una lista de todos los trabajos activos en la sesión actual de su shell mediante el comando jobs.
Cada trabajo recibe un número de trabajo único (como [1], [2], etc.) y su estado (por ejemplo, Stopped, Running).
sleep 50 &
sleep 60 &
jobsTraer al primer plano (fg)
Si tiene un trabajo detenido o enviado al segundo plano, puede devolverlo al primer plano mediante el comando fg, seguido de su número de trabajo (por ejemplo, %1).
Esto vuelve a convertir el trabajo en el proceso activo de su terminal.
sleep 100 &
jobs
# Now, let's bring it to foreground
fg %1Enviar al segundo plano (bg)
Para reanudar un trabajo detenido y enviarlo al segundo plano, use el comando bg con su número de trabajo.
El proceso seguirá ejecutándose sin bloquear su terminal y recuperará el indicador de comandos inmediatamente.
sleep 200
# Press Ctrl+Z to stop it
# Then type:
bg %1
jobsEjecutar en segundo plano ( & )
No siempre es necesario iniciar un proceso en primer plano y después pausarlo. Puede iniciar un comando directamente en el segundo plano añadiendo un ampersand (&) al final del comando.
Esto resulta ideal para tareas de larga duración con las que no necesita interactuar.
echo "Starting long task..." &
sleep 300 &
jobsNúmeros de trabajo y PID
Al usar jobs, verá números de trabajo como [1], [2]. Estos son específicos de su sesión de shell.
Cada proceso en ejecución también tiene un identificador de proceso (PID) único, que es un número válido para todo el sistema. Puede ver los PID con jobs -l o ps.
sleep 100 &
jobs -lDetener trabajos (kill)
Para terminar un trabajo en segundo plano o detenido, puede usar el comando kill. Puede especificar el número de trabajo (por ejemplo, kill %1) o su PID (por ejemplo, kill 12345).
kill envía una señal al proceso. De forma predeterminada, es SIGTERM (terminación ordenada). Para forzar la terminación, use kill -9 %job_number o kill -9 PID.
sleep 500 &
jobs
# Assuming sleep is job 1:
kill %1
jobsCuestionario sobre el control de trabajos
Ha iniciado un comando de larga duración (por ejemplo, find / -name *.txt), pero ahora necesita recuperar su terminal para escribir otro comando. ¿Cuál es la secuencia correcta para pausar el comando find, enviarlo al segundo plano para que siga ejecutándose y confirmar después que es un trabajo en segundo plano?
Resumen: control de trabajos
¡Ha aprendido a controlar trabajos!
Ctrl+Zpausa un proceso en primer plano.jobsmuestra todos los trabajos activos.fg %Nlleva el trabajoNal primer plano.bg %Nenvía el trabajo detenidoNal segundo plano.- Añadir
&ejecuta un comando directamente en segundo plano. kill %Nokill PIDtermina un trabajo.
¡Esto le permite administrar varias tareas de forma eficiente dentro de una sola sesión de terminal!
Aprende DevOps Bootcamp con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 142
- Lecciones
- 568
Preguntas frecuentes
¿La lección «Control de trabajos (bg, fg, jobs)» es gratis?
Sí — el texto completo de «Control de trabajos (bg, fg, jobs)» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de DevOps Bootcamp, actualiza a CoddyKit PRO. El curso de DevOps Bootcamp incluye 4 lecciones en total.
¿Qué aprenderé en «Control de trabajos (bg, fg, jobs)»?
Domine la gestión de procesos en segundo y primer plano: pause, reanude y liste trabajos dentro de su sesión de shell. Practicas DevOps Bootcamp con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar DevOps Bootcamp?
No se requiere experiencia previa. DevOps Bootcamp en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Control de trabajos (bg, fg, jobs)»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de DevOps Bootcamp?
Sí. Cada lección de DevOps Bootcamp incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Control de trabajos (bg, fg, jobs)
- Expansión del shell y globbing
- Alias y prompts personalizados
- Funciones de shell y fragmentos reutilizables