Cos'è mkfifo?

mkfifo per creare un «tubo» nominato.

Per ascoltare dal tubo :

mkfifo tubo
cat < tubo
Con questo, il shell apre il tubo in lettura e lo connette allo stdin di cat
C'è un'altro modo per leggere dal tubo :
cat tubo
Con questo, cat apre il tubo in lettura. Per scrivere nel tubo :
echo "cosa" >> tubo

cat esce subito quando l'ultimo processo che scrive si chiude. Per farlo rimanere aperto :

cat 0<> tubo
Se ho capito bene, il shell apre il tubo per scrittura e lettura e connette il stdin e il stdout al tubo. Facendo questo, il tubo non si chiuderà mai; non ci sarà mai un EOF.

Per più informazione :
unix.stackexchange.com - reading a named pipe, tail or cat
howtogeek - how to use pipes on linux