Procesos en foreground y background

19/23

Lectura

Como viste en la clase de procesos podemos correr de manera as铆ncrona comandos, y si estos no se completan quedar谩n activos dentro de los procesos de la terminal.

...

Reg铆strate o inicia sesi贸n para leer el resto del contenido.

Aportes 70

Preguntas 35

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

驴C贸mo manejar procesos?
Diferencia entre Ctrl + C y Ctrl + Z
Ctrl + C Lo que hace es que finaliza o mata un proceso.
Ctrl + Z Lo que hace es que pausa o suspende un proceso con lo que despu茅s lo podremos volver a llamar con el comando fg foreground (primer plano) o con el comando bg background (segundo plano)
Y un ejemplo muy sencillo que les servir谩 para controlar procesos es el siguiente:
.
Crear un listado recursivo (Que liste todos los archivos y directorios)
Para eso seguimos los sigueintes pasos:
1.- Primero hacemos el comando cd / para dirigirnos a la ra铆z de nuestro sistema.
2.- Despu茅s ejecutamos el comando ls -R y comenzar谩 a listar TODO lo que existe dentro de nuestro S.O.
3.- Ahora lo que hacermos ser谩 confirmar lo aprendido, utilizamos Ctrl + C y veremos que se cancela el proceso, pero lo interesante viene cuando hacemos lo siguiente 馃槃
4.- Ahora ejecutamos el mismo comando para listar TODO, ls -R y lo detenemos con Ctrl + Z a lo que nos saldr谩 lo siguiente: [N煤mero del proceso] + Id del proceso + En donde se detuvo el proceso
Y se ver谩 algo como esto: [1] + 40751 suspended (signal) ls --color=tty -R
Y repetiremos el paso 4 otras 3 veces (Ustedes conf铆en 馃槃)
Ahora si ejecutamos el comando jobs nos mostrar谩 todos los procesos suspendidos y si tenemos ejecutando alguno en segundo plano.
Imgur
Para volver a activar alg煤n proceso podemos hacerlo con el comando fg %N煤mero del proceso
Por ejemplo en bash con fg %1 y en zsh con fg %1 para volver a correr el primer proceso que suspendimos, y ahora le damos Crl + C para ahora s铆 matarlo, ahora el proceso 1 ya no existir谩 al ejecutar jobs pero el 2, 3 y 4 ah铆 seguir谩n 馃槃
Esto es muy importante para cuando queremos manejar diferentes procesos, por ejemplo con el comando sleep 10000 & podr谩 un proceso en segundo plano, entonces no lo podremos ver, pero nos marca el N煤mero del proceso entre los [] tambi茅n lo podemos ver con jobs junto con su n煤mero de proceso, si lo queremos traer a primer plano lo podemos hacer con el comando fg %1 por ejemplo y de ah铆 ya cancelarlo o suspenderlo, o una manera m谩s r谩pida, solo ejecutar el comando kill %N煤mero del proceso por ejemplo: con el mismo ejemplo de sleep 10000 & si nos da el [1] lo podremos terminar con kill 1 o kill %1 y nos saldr谩 algo como [1] + 41723 terminated sleep 10000 y ahora ya saber como manejar y exterminar todos los procesos como terminator 馃
.
.
Diferencia entre Ctrl + L y clear
Ctrl + L Lo que hace es que manda para arriba lo que est谩 impreso en la terminal, dej谩ndola a simple vista limpia, pero en realidad lo puedes regresar a eso que esta impreso ah铆.
clear Lo que hace es que limpia la terminal, y todo lo que estaba impreso en la terminal.

Saludos a todos 馃槃

馃挌 Ctrl + C combinaci贸n para interrumpir procesos, cuando un proceso no responde o no termina.

驴C贸mo?.. O.o
En la 煤ltima parte, 驴C贸mo se ingresa el comando 鈥榖g 1鈥?
Por favor TeamPlatzi, no hagan este tipo de clases, que son completamente de lectura, compartan art铆culos cient铆ficos, d茅jenos retos, pero no esto鈥 馃槙

Notas 馃槃
Procesos de foreground y background.

  • Los procesos que est谩n corriendo pero no se muestran en terminal se dice que est谩n en background. Los que si se muestran est谩n en foregroung. 馃彉锔
  • Para mover un proceso al background, usamos Ctrl+z. Esto lo suspende, pero sigue corriendo (como con Cat). Para matar un proceso se usa Ctrl+c
  • fg <numero de trabajo> nos permite traer un proceso al foreground. Es importante notar que el n煤mero de trabajo no es lo mismo que el PID.
  • bg <numero de trabajo> nos permite llevar un proceso al background, pero sin suspender el proceso.猸

Procesos en foreground y background

Ctrl + C //finaliza un proceso
Ctrl + Z //suspende el proceso enviandolo al background
jobs //nos permite ver que procesos tenemos en el background
cristian@cristian-Latitude-5400:~$ jobs
[1]+  Detenido                cat > ejemplo.txt
fg [JOB ID] //nos permite traer el foreground un proceso que tengamos en background
cat > ejemplo.txt & //al poner un ampersand al final del comando, lo enviamos directo al background.
bg [JOB ID] //envia un proceso al background

Mi comentario se encuentra un poco alejado a la lecura, sin embargo para tomar en consideraci贸n.

Para crear/editar un archivo se puede utilizar el editor nano que viene por defecto en la mayor铆a de distribuciones Linux.

nano filename.extension

Algo no anda bien鈥 馃

Les comparto un apunte del mismo curso pero del 2019 que est谩 relacionado con esto. 馃槃

Clase:

Administraci贸n de procesos en background y foreground

Ejecuci贸n en primer plano

Cuando ejecutamos un proceso en la terminal y este tarda no podemos hacer nada en la misma, solamente esperar a que termine el proceso, a esto se lo llama ejecuci贸n en primer plano.

Ejecuci贸n en segundo plano o background

En caso de que queramos seguir usando la terminal mientras se est谩 ejecutando un poseso podemos usar & al final de nuestro comando.

$ mysql -h 127.0.0.1 -u root -p1234 < dump1.sql &

Otro caso en el que aplicamos esto es cuando usamos un servidor que tiene que estar ejecut谩ndose siempre para que el sistema funcione a este tipo de procesos se los conoce como servicios, demonios o demon.

CTRL + Z

Con este comando podemos tambi茅n mandar un proceso a background una vez ya hallamos lanzado el proceso.

fg

Lo usamos para volver al proceso que ten铆amos en segundo plano.

Herramientas

Estas son herramientas para ver los procesos que est谩n en ejecuci贸n.

ps

Colocando simplemente este comando podemos ver los procesos que tenemos abiertos.

ps ax

Con este comando podemos ver todos los procesos del sistema, me da muchas m谩s informaci贸n que ps.

Aparte de decir el proceso que est谩 corriendo tambi茅n nos dice el archivo que se est谩 ejecutando.

Este es una utilidad de tipo batch

$ ps ax | grep expresi贸n-regular

top

Este es una utilidad interactiva, va mostrando en tiempo real como los procesos van cambiando. Muestra como va la computadora mostrando la memoria ocupada, la libre.

Desde aqu铆 podemos matar procesos si lo deseamos o ver m谩s informaci贸n.

Detener procesos

CTRL + C

Detengo un proceso.

Herramientas

Usando el comando ps ax podemos ver al proceso que est谩 colgado o en un bucle infinito con su respectivo n煤mero que lo identifica en la columna de PID.

Ambas de las siguientes herramientas son parecidas.

kill

Funciona enviando se帽ales a los procesos para que se detengan, los procesos pueden estar escuchando las se帽ales (tiene que ver como funcionan los procesos en UNIX) para no tener que interrumpirse violentamente, sino que terminen lo que estaban haciendo y detenerse.

Este comando detiene o mata a un proceso en ejecuci贸n.

$ kill -9 PID

killall

Este hace b谩sicamente lo mismo que kill solo que a este se le pasa el nombre del archivo ejecutable que est谩 disparando el proceso.

Hola, para aquellos que no pudieron resolver lo de google-chrome-stable
Yo tuve el mismo problema y lo resolvi asi鈥
Me pregunte鈥 mi Ubuntu tiene Chrome?, mmm no, por que no lo instal茅鈥 usualmente Ubuntu trae Firefox ya instalado en Ubuntu en version grafica (SO, no WSL), pero en WSL no!, entonces busque como instalar AQUI segui las instrucciones como poner estos 2 comandos:

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt -y install ./google-chrome-stable_current_amd64.deb

E inicialize con:

google-chrome

Ten en cuenta que algunas clases no estan muy actualizadas y a la vez que los Sistemas Operativos se actualizan cada mes o cada a帽o鈥 Lo que hace que lo que veas en estas clases no sea exactamente lo que te pase鈥

Por Ejemplo cunando coloque el comando

google-chrome

Me sali贸 esto:

y cre铆 que estaria mal鈥 pero luego:

CHA CHA CHA CHAAANNNN!!! Ubuntu abri贸 el Google Chrome鈥

El problema fue que UNIX busca entre todos sus puertos uno para comunicarse con Google Chrome鈥 y de todos lo encuentro y nos muestra chrome鈥

Para los que quieran abrir chrome y est茅n ocupando WSL pueden ocupar:

wslview chrome

Eso s铆, el proceso no se ver谩 en la terminal porque se est谩 ejecutando en Windows 馃榾

Nose ustedes pero yo le铆 esto con la voz de Enrique. 馃槂

Esto de mandar al bg es muy necesario para cuando se abren los servidores de desarrollo ya que con esto nos ahorramos el proceso de abrir una nueva terminal

El comando bg (background) se usa para reanudar un trabajo que est谩 suspendido en segundo plano.
En esta liga pueden encontrar algunos ejemplos pr谩cticos https://geekland.eu/gestionar-trabajos-en-linux-terminal/

Video donde explican de mejor manera el comando bg 鈫 https://www.youtube.com/watch?v=gExUhQb0CNA

Kill: matar un proceso usando su PID

La forma m谩s complicada pero al mismo tiempo m谩s precisa de matar un proceso es a trav茅s de su PID (siglas en ingl茅s de 芦Identificador de Proceso禄). Cualquiera de estas 3 variantes puede servir:

kill -TERM pid
kill -SIGTERM pid
kill -15 pid

Se puede usar el nombre de la se帽al (TERM o SIGTERM) que se desea mandar al proceso o su n煤mero de identificaci贸n (15). Para ver un listado completo de las posibles se帽ales, sugiero verificar el manual de kill. Para ello, ejecut谩:
Art铆culo relacionado:
Apagar y reiniciar mediante comandos

man kill

Veamos un ejemplo de c贸mo matar Firefox:

Primero, hay que averiguar el PID del programa:

ps -ef | grep firefox

Ese comando devolver谩 algo parecido a esto:

1986 ? Sl 7:22 /usr/lib/firefox-3.5.3/firefox

Usamos el PID devuelto por el comando anterior para aniquilar el proceso:

kill -9 1986

killall: matar un proceso usando su nombre

Este comando es bien f谩cil

killall nombre_proceso

Un dato a tener en cuenta al usar este m茅todo es que en caso de que haya m谩s de una instancia de ese programa ejecut谩ndose, se cerrar谩n todas.
Art铆culo relacionado:
Cron & crontab, explicados

pkill: matar un proceso usando parte de su nombre

Es posible aniquilar un proceso especificando el nombre completo o parte del nombre. Eso significa que no hay necesidad de que recuerdes el PID del proceso para enviar la se帽al.

pkill parte_nombre_proceso

Como contrapartida, este m茅todo aniquilar谩 todos los procesos que contengan la palabra ingresada. Eso significa que si tenemos abiertos 2 procesos que comparten una palabra en el nombre, se cerrar谩n ambos.

xkill: matar un proceso seleccionando la ventana con el mouse

Este es el m茅todo m谩s sencillo y el m谩s pr谩ctico. En caso de desastre, simplemente presion谩 Alt + F2 para que se abra el cuadro de di谩logo que te permitir谩 ejecutar comandos. Desde all铆, ejecut谩 el siguiente comando:

xkill

El cursor del mouse se transformar谩 en una peque帽a calavera. Todo lo que resta es hacer clic en la ventana que quer茅s cerrar y voil谩. Chau proceso.

Clase 19 鈥 Procesos en foreground y background


驴En qu茅 donde se est茅 ejecutando un procesos que no aparece en la terminal?

  • En background.

驴En qu茅 donde se est茅 ejecutando un procesos que aparece en la terminal?

  • En foreground.

驴C贸mo podemos pasar un comando que se est谩 ejecutando en foreground al background?

  • Pulsando CTRL + Z

驴Para qu茅 nos sirve el comando jobs?

  • Para ver los procesos que se est谩n ejecutando en el background.

驴Qu茅 es el n煤mero que nos muestra a la izquierda del output que recibimos del comando jobs?

  • El n煤mero de trabajo.

驴El n煤mero de trabajo es lo mismo que PID de un proceso?

  • No.

驴C贸mo podemos pasar un comando que se est谩 ejecutando en foreground al background?

  • Ejecutando el comando fg junto al n煤mero de trabajo.
fg 1

驴C贸mo podemos pasar un comando que se est谩 ejecutando en foreground al background en la Shell ZSH?

  • Ejecutando el comando fg junto al n煤mero de trabajo junto a al s铆mbolo de porcentaje.
fg %1

驴Qu茅 otras formas existen para enviar procesos en foreground al background?

  • Usando el operador & al final del comando
cat > nota.txt &
  • Usando el comando fg y el numero de trabajo
bg 1

Cuando usemos cat, recordemos usar >> para conservar el contenido anterior del documento, ya me ocurri贸 que tome muchas notas importantes y en una utilic茅 cat > (as铆 solo con >) . Y as铆 de f谩cil perd铆 todas mis notas anteriores.

Diferencia entre Ctrl + C y Ctrl + Z
Ctrl + C Lo que hace es que finaliza o mata un proceso.
Ctrl + Z Lo que hace es que pausa o suspende un proceso con lo que despu茅s lo podremos volver a llamar con el comando fg numero trabajo (fg 1) foreground (primer plano) o con el comando bg numero de trabajo (bg 1)background (segundo plano)

muy interesante herramienta que nos permite paralelizar procesos para sacarle mas provecho a nuestro hardware y nuestro tiempo.

Cerrar puerto sin matar el servcio:

$ sudo fuser -k 8080/tcp

Sustituye 8080 por el puerto que deseas matar sin afectar el deamon o servicio que lo ejecuta.

background: 
    Lugar donde se ejecutan procesos ocultos.

foreground:
    Lugar donde se ejecutan procesos mostrados.

COMANDOS:

    ctrl + z : Detiene un proceso y lo manda al background.

    jobs: Muestra los procesos en el background.

    fg : Pasa un proceso al foreground.
        [numJobs]
        [%numJobs] -> ZSH.

    bg : Pasa un proceso al foreground.
        [numJobs]
        [%numJobs] -> ZSH.

En mi consola cuando ejecuto un proceso en background aparece una peque帽a marca para indicarme que hay procesos corriendo. 馃槂 La verdad no estoy seguro qu茅 hace que aparezca, pero uso zsh como shell con oh-my-zsh.
.

Pueden pegar este bloque de c贸digo en su archivo 鈥.bashrc鈥 o en el archivo 鈥.zshrc鈥 para tener un keybinding para mandar el proceso activo a background y luego traerlo con el mismo keybinding:

ctrlz() {
  if [[ $#BUFFER == 0 ]]; then
    fg >/dev/null 2>&1 && zle redisplay
  else
    zle push-input
  fi
}
zle -N ctrlz
bindkey '^Z' ctrlz

Esto es superefectivo al trabajar con una fake api como en el curso de react practico, ya que se requiere tener 2 terminales corriendo, con lo cual podemos tener una sola y ejecutar el otro proceso en bg1

investigue cual es la diferencia entre PS y JOBS la diferencia radiaca PS es permite procesos que no estan relacionados con la shell es mas generioco \_se encarga de enumerar filtrar procesos y el stado del proceso ps se encarga de todo lo que tiene que ver con el O.S JOBS se encarga de los procesos que tiene que ver con la shell

No ejecuta google-chrome-stable

google-chrome-stable: command not found

No puedo creerlo, pude copiarlo todo, incluso las im谩genes, con solo pasar el cursor y pegarlo en Notion.

Ahora si puedo editar el archivo con VSC sin bloquearme solo ingresar:
code mi_nota.txt &

Esta explicaci贸n con el foreground y background nos ayuda a ejecutar programas desde la terminal y saber como dejarlas ejecutando o pausando en segundo plano, permitiendo de esa manera liberar la terminal para usar otros comandos.

Adem谩s recuerden que para matar procesos en Ubuntu es con estos dos formatos:

kill NroPID
kill %NroProceso

驴Qu茅 es聽Background y聽Foreground?. Son los planos en los que se puede ejecutar un proceso primer plano en este caso foreground y segundo plano background. Una vez sabido esto, 驴para qu茅 vale y qu茅 se puede hacer en linux con esto?. Muy f谩cil, imagina que queres ejecutar un programa desde la terminal. Esto conlleva que esa terminal no se pueda usar mas, porque est谩 el programa ejecut谩ndose y si hacemos un聽CTRL + C, el programa se parar铆a y eso no se quiere.

Manejo de procesos
ps: nos muestra los procesos que est谩n corriendo en la terminal actualmente, tiene un PID, process ID.
**ps ax: **Muestra los procesos que se est谩n ejecutando del sistema
**kill <PID>: **para matar procesos, termina los procesos.
kill -9 <PID>: para matar proceso inmediatamente.
killall -9 <PID>: para matar proceso inmediatamente.
top: muestra los procesos que est谩n usando m谩s recursos de manera m谩s detallada. Teclear h para ver las opciones
htop: muestra los procesos que est谩n usando m谩s recursos como top pero de una manera m谩s interactiva.
CONTROL+C: Finaliza o mata un proceso.
CONTROL+Z: Se usa para suspender el proceso
jobs: Se usa para consultar todos los procesos que tenemos en background, a la izquierda aparece el n煤mero de trabajo #t.
**fg <#t>:**Sirve para traer una tarea de background a foreground especificando el n煤mero de trabajo. Luego sigue la ejecuci贸n del comando en la terminal.
<commando> &: Env铆a el proceso a background una vez es ejecutado.
bg <#t>: lleva un trabajo al background. Con esto podremos ver como nuestro proceso sigue corriendo en el background dejando la terminal disponible para nosotros.

Ctrl + shit + c (Copiar en la terminal) Ctrl + shift + v (Pegar en la terminal) SOY USUARIO UBUNTU no s茅 si sirva para las dem谩s

Commands

  • Bring a suspended process to foreground

    fg %number
    
  • Send a running process to background

    bg number
    

    or

    command &
    

    Type the 鈥&鈥 at the end

  • See the jobs in the background o suspended

    jobs
    

Para lanzar la ejecuci贸n de procesos en segundo plano tenemos que ejecutarlos poniendi 鈥&鈥 al final:

$ ./programa.sh &

Para pausar un proceso en ejecuci贸n:

$ CTRL + Z -> pausa el proceso en ejecuci贸n

Para ver el listado de procesos pendientes (jobs)

$ jobs -> lista el o los proceso/s en pendientes
Devolverpor ejemplo:
    [1] - Detenido    joe file.txt (dir ahora: ~/home)
    [2] + Detenido    joe file.txt (dir ahora: ~/home)  P

Para volver a lanzar un proceso pausado tenemos dos opciones 鈥渂g鈥 y 鈥渇g鈥:

$ bg -> lanza el proceso pausado en segundo plano (similar a ejecutarlo con & al final, dejando el terminal libre)

$ fg -> lanza el proceso pausado en primer plano (monopolizando el terminal)

En caso de tener varios procesos (el n煤mero de proceso es el que aparece entre corchetes en la respuesta del comando jobs) podemos atender el proceso deseado con fg identificador:

$ fg 1 -> recupera el proceso con identificador 1

Ver puertos del sistema:

$ sudo lsof -i -P -n | grep LISTEN

Ojal谩 esta clase la subieran en video. 馃槮

Tilix se ve interesante como terminal, pero mi preferida sigue siendo Guake con Byobu.

hola muchachos este comando tambien funciona en ubuntu fg % nm

Aqu铆 les comparto algunas flashcards que hice para esta lecci贸n.

  • 驴Qu茅 significa que un proceso se est茅 ejecutando en el background?

    • Significa que el proceso se est谩 ejecutando en segundo plano y no se muestra en la terminal.
  • 驴C贸mo podemos suspender un proceso en la terminal?

    • Podemos suspender un proceso con la combinaci贸n de teclas 鈥淐TRL+Z鈥.
  • 驴C贸mo podemos ver todos los procesos en background?

    • Usando el comando 鈥渏obs鈥 podemos ver todos los procesos en background.
  • 驴C贸mo traemos un proceso de background al foreground?

    • Utilizamos el comando 鈥渇g鈥 seguido del n煤mero del trabajo o el porcentaje del trabajo en caso de usar ZSH.
  • 驴Cu谩l es el operador que nos permite enviar un proceso directamente al background al ejecutarlo?

    • El operador 鈥&鈥 al final del comando permite enviar un proceso directamente al background.
  • 驴C贸mo enviamos un proceso al background usando el comando 鈥渂g鈥?

    • Ejecutamos 鈥渂g鈥 seguido del n煤mero del trabajo para llevarlo al background.
  • 驴Qu茅 ventaja tiene mover procesos al background en una sola terminal?

    • Permite ejecutar varios comandos en paralelo, manteniendo la terminal disponible para otros trabajos.
  • 驴Cu谩l es la combinaci贸n de teclas para guardar una nota en el editor de texto de la terminal?

    • La combinaci贸n de teclas para guardar la nota es 鈥淐TRL+D鈥.
  • 驴Cu谩l es la funci贸n del comando 鈥渢op鈥?

    • Muestra una lista detallada de los procesos en ejecuci贸n con su consumo de CPU y RAM.
  • 驴Qu茅 indica el n煤mero de trabajo en el comando 鈥渏obs鈥?

    • El n煤mero de trabajo indica la posici贸n del proceso en la lista de trabajos en background.

Procesos en foreground y background


Los procesos en foreground (primer plano) y background (segundo plano) hacen referencia al estado de ejecuci贸n de un proceso en relaci贸n con la terminal desde la cual se inici贸.
.

Proceso en foreground (primer plano):


  • Se ejecuta en la terminal actual y tiene el control de la entrada y salida est谩ndar (stdin, stdout, stderr) de la terminal.
    .
  • Cuando ejecutas un comando o programa en la terminal sin ninguna indicaci贸n especial, el proceso se iniciar谩 en foreground de forma predeterminada.
    .
  • El proceso en foreground bloquea la terminal y no puedes ejecutar nuevos comandos hasta que el proceso actual se complete o se interrumpa.
    .

Proceso en background (segundo plano):


  • Un proceso en background se ejecuta en segundo plano y no bloquea la terminal.
    .
  • Para ejecutar un proceso en background, podemos agregar el s铆mbolo 鈥&鈥 al final del comando. Ejemplo, cat > mi_nota.txt &.
    .
  • Al ejecutar un proceso en background, se liberar谩 la terminal y podremos continuar ejecutando comandos sin tener que esperar a que el proceso en segundo plano finalice.
    .
  • Estos procesos suelen utilizarse para ejecutar tareas que no requieren interacci贸n directa con el usuario o que pueden tardar mucho tiempo en ejecutarse.
    .

Administrar procesos en foreground y background


  • Para enviar un proceso en foreground al background, utilizamos el atajo de teclado ctrl + z. Esto suspender谩 el proceso actual y nos devolver谩 el control de la terminal. Luego, podemos utilizar el comando bg para poner el proceso en segundo plano y permitir que continue su ejecuci贸n.
    .
  • Para enviar un proceso en background al foreground, utilizamos el comando fg seguido del n煤mero de job o el ID del proceso. Esto traer谩 el proceso al primer plano y permitir谩 la interacci贸n con 茅l.
    .
  • Con el comando jobs podemos ver una lista de procesos en segundo plano que se est谩n ejecutando actualmente en la terminal.
    .
  • Para finalizar un proceso en foreground o background, usamos el comando kill seguido del n煤mero de job o ID del proceso. Ejemplo kill %1 para finalizar el primer proceso o kill 1234 para finalizar el proceso por su ID.

Gracias profe鈥

Esta clase tuvo que aparecer antes que el video anterior. Aqui lo explica mucho mejor.

Informaci贸n resumida de esta clase
#EstudiantesDePlatzi

  • Cuando un proceso est谩 corriendo, pero no est谩 mostrado en la terminal, significa que est谩 funcionando background

  • Si el proceso lo podemos ver significa que est谩 funcionando foreground

  • Para mirar los procesos bakground podemos utilizar el comando job

  • Tambi茅n puedo enviar un proceso a bakcground utilizando & al final de la sentencia o el comando

Para regresar a Home usa cd ~

Finalizar y suspender procesos

Ctrl + C //finaliza un proceso
Ctrl + Z //suspende el proceso enviandolo al background

Consultar procesos en background

jobs 

Enviar procesos al background

cat > mi_nota.txt & 
bg 1 // donde 1 es el id del proceso en background (Stopped)

Enviar procesos al foreground

fg 1 // donde 1 es el id proceso en background

para la ultima prueba lo hice con firefox por que es el navegador que tengo instalado super f谩cil:

  1. ejecute firefox se nos despliegan varios recursos y urls.
  2. despu茅s lo detienes con ctrl + z.
  3. jobs para ver en el background y en su estado detenido
  4. despu茅s usas bg (numero de proceso)
  5. y cuando ejecutemos jobs veremos que aparecer谩 en estado ejecutando y en background

Deberian hablar sobre el uso de screen que nos permites tener varias terminales en una misma terminal por asi decirlo!

  • Como ver el PID de todos los procesos de la lista del comando jobs?

para ver el PID

jobs -p

para ver el PID de solo los comando con estado Stopped

jobs -ps
  • Para eliminar todos los procesos que estan en estado stopped podemos usar el comando
kill -9 `jobs -ps`

Procesos en foreground y background

  • Cuando los procesos se encuentran corriendo a vista en la terminal se dice que est谩n en foreground.
  • Cuando est谩n en segundo plano ejecut谩ndose, fuera de nuestra vista, est谩n en background.
  • En el mismo prompt, al dar de input Crtl + Z suspenderemos el proceso.
  • Ctrl + D para terminar el input y guardar.
  • jobs muestra los procesos en background.
  • Si queremos traer la ejecuci贸n del proceso de nuevo a foreground, usaremos el comando fg especificando el n煤mero del trabajo.
  • Otra forma de enviar un proceso a background es usando en operador de control &,enviar谩 a background el proceso una vez ejecutado.
  • bg de similar forma que fg lleva el trabajo seg煤n su n煤mero pero esta vez a background.
  • Esto es de bastante utilidad cuando solo tengamos una terminal y necesitemos ejecutar varios comandos en paralelo.

Ahora entiendo, esto siempre me pasaba y solo sabia que tenia qu茅 apretar fg para volver a traer la ejecuci贸n en foreground. Con esto me quedo mucho m谩s claro!
GRACIAS!

podras dejar en segundo plano procesos (background) con el comando ctrl + z, y podremos continuar en donde lo dejamos con fg (foreground) y el numero de proceso, hay que tomar en cuenta que el numero de proceso esta hasta la izquierda y es diferente al PID. otros comandos de uso son: cat > minota.txt & (para dejarlo en el background directamente), bg (para hacer que un proceso en el background siga corriendo y no se pause)

Hagan la clase de manera interactiva como las anteriores, las lecturas son buenas pero no es tan din谩mica como un video y deja cosas en el aire

Pense que habia hecho algo por error , pero la clase efectivamente fue en texto!!!

Excelente!

Esto me parece muy 煤til para trabajar con Netbeans
.

Gracias!

Procesos en Background y Foreground

  • Proceso en background (bg) 鈫 Proceso en ejecuci贸n sin mostrarse en la terminal
  • Proceso en foreground (fg) 鈫 Proceso cuya ejecuci贸n se munetra en la terminal

.

Comandos para navegar entre bg y fg

  • ctrl +z 鈫 detiene el proceso envi谩ndolo a bg (el proceso est谩 cargado pero no est谩 activo)
  • jobs 鈫 nos muestra las tareas en bg
  • fg <#> 鈫 trae a fg el proceco # de jobs
  • & 鈫 env铆a a bg un proceso al momento de ser llamado <proceso> &
  • bg 鈫 env铆a a bg un proceso pero este puede seguir ejecutandose (a diferencia de ctr+z)

.
Nota:

  • ctr + c 鈫 detiene los comandos en ejecuci贸n

Si alguien usa terminales fish :

bg %1 
fg %1 

Doc fish online

me pareci贸 muy buena esta clase!

馃
Ctrl + C Lo que hace es que finaliza o mata un proceso.
馃
Ctrl + Z Lo que hace es que pausa o suspende un proceso con lo que despu茅s lo podremos volver a llamar con el comando fg foreground (primer plano) o con el comando bg background (segundo plano)

Cuando un proceso est谩 en ejecuci贸n sin que sea mostrado en la terminal se dice que se est谩 ejecutando en el background (segundo plano). Si se muestra la ejecuci贸n del comando dentro de la terminal se dice que est谩 en el foreground (primer plano).

En lo personal, esta clase, fue muy buena. Sigan as铆 equipo PLATZI.

Por alguna raz贸n me acabo de dar cuenta que he so帽ado que le铆a sobre estos procesos, aunque cuando lo so帽茅 no sab铆a que significaban, que creisi jaja

Entendido

esto se ve muy interesante ya que es una clase que tiene visualizaci贸n escrita y hace varias clases que no se ve铆a exceptuando algunas clases

Ctrl + C y Ctrl + v a Word .

Es s煤per necesario el manejo del Fore y Background con fg y bg ;D