O shell não executará um programa até que qualquer redirecionamento de arquivo tenha sido concluído com êxito. O comando pyscript > fifo
fará com que o shell bifurque e tente abrir fifo
. Isso só será bem sucedido quando algum processo tiver aberto fifo
para leitura. Até lá, o shell filho estará em espera de espera.
$ (sleep 10;ps -l -t pts/0)&
[1] 2574
$ pyscript > fifo
F S UID PID PPID WCHAN TTY CMD
0 S 1000 2554 2535 wait pts/0 bash //interactive shell
1 S 1000 2574 2554 wait pts/0 bash //fork of shell, parent of sleep and ps
1 S 1000 2576 2554 pipe_w pts/0 bash //fork of shell, waiting to open fifo
0 R 1000 2577 2574 - pts/0 ps