$ while true; do echo Hello, I updated the header; sleep 5; done &
[1] 1631507
$ Hello, I updated the header
sleep 30; echo Sleep is done.
Hello, I updated the header
Hello, I updated the header
Hello, I updated the header
Hello, I updated the header
Hello, I updated the header
Hello, I updated the header
Hello, I updated the header
Sleep is done.
Hello, I updated the header
$ kill %1
[1]+ Terminated while true; do
echo Hello, I updated the header; sleep 5;
done
$
Edit: I'm fairly confident now that you're just thinking the loop will stop when you run oogabooga, but that's not how it works. That up above is how it works; the loop keeps going during the sleep with them both going on the same terminal, then after the sleep process terminates, I kill the loop, but for the whole 30 seconds previous, they were both going. It'll be the same with oogabooga. This the situation you're asking about, yes?