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

Raspunde prin e-mail lui