2018-07-28 1:53 GMT+03:00 MOROIANU Dragos <[email protected]>: > [dmoroianu@hpchn01 ~]$ mkfifo t.bc > > [dmoroianu@hpchn01 ~]$ bc < t.bc > acum intr-un alt terminal: > [dmoroianu@hpchn01 ~]$ echo "2+3" > t.bc > programul afiseaza '5' si iese fara sa mai astepte comanda 'quit'. > Cum conving programul sa astepte si alte comenzi si sa iasa doar dupa ce ii > trimit 'quit'?
mkfifo t.bc bc < t.bc ... exec 7>t.bc echo 2 + 3 >&7 echo 4 + 5 >&7 ideea e sa tii FIFO-ul deschis; altfel, in momentul in care o comanda de forma 'foo >out' a fost executata, toti descriptorii care au fost deschisi prin redirectionari sint inchisi, indiferent daca 'foo' e un proces separat sau o comanda built-in; iar cind capatul de scriere al unui FIFO e inchis, procesul din celalt capat primeste un EOF. _______________________________________________ RLUG mailing list [email protected] http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
