Linux - Gestión de Tareas Linux - Problema al enviar y traer de segundo plano una tarea

   
Vista:

Gestión de Tareas Linux - Problema al enviar y traer de segundo plano una tarea

Publicado por Jorge jorgesumle@gmail.com (1 intervención) el 10/04/2016 16:27:35
Hola, he escrito lo siguiente en la terminal:
1
while true; do date; sleep 5; done;
Estoy usando Bash. Al enviar la tarea a segundo plano, no parece que haya ningún problema; sin embargo, cuando hago fg, la tarea deja de ejecutarse, ¿qué sucede?
1
2
3
4
5
^Z
[2]+  Detenido                sleep 5
$ fg 2
sleep 5
$
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Gestión de Tareas Linux - Problema al enviar y traer de segundo plano una tarea

Publicado por Tom (346 intervenciones) el 20/04/2016 15:09:41
Lo que estás enviando "a background" es la ejecución de sleep, no de todo el bloque while.

Prueba esto:

while true; do date; sleep 5; done; echo "finished"

Y verás que el while finaliza en cuanto detienes el sleep (internamente, es probable que se capture el error de la interrupción de sleep y eso cause que el while finalize).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar