PDA

View Full Version : [C] PIPE concatenata


Sirbako
05-05-2006, 12:27
per la pipe singola non dovrei avere problemi, ma quella concatenata non ho la più pallida idea di come implementarla.
essendo la pipe un vettore di 2 elementi, per fare le pipe cocatenate (infinite), come faccio?
per esempio:
gedit 1 | gedit 2 | gedit 3 | gedit 4 | gedit 5 | gedit 6 | gedit 7 | gedit 8 | gedit 9
dovrebbe aprire gedit con i 9 file, che alla fine nn so cosa debbano comunicare il padre al figlio,
mentre in un who | wc (magari altri pipe) il padre e il figlio comunicano..
idee? aiuti?

sottovento
05-05-2006, 16:17
Non potresti applicare la stessa modalita' ricorsivamente/iterativamente?
Tutto sommato si tratta di mettere in pipe l'output del precedente con l'input del successivo. Mi sembra che il problema piu' difficile tu l'abbia gia' risolto.

E poi, teoricamente l'istruzione che hai impartito non apre 9 file con gedit, ma chiama 9 volte gedit, e questo lo sai gia' fare. Il fatto che poi gedit riconosca che e' gia' in esecuzione potrebbe non essere affar tuo, no?

High Flying
Sottovento

Sirbako
05-05-2006, 16:50
Non potresti applicare la stessa modalita' ricorsivamente/iterativamente?
Tutto sommato si tratta di mettere in pipe l'output del precedente con l'input del successivo. Mi sembra che il problema piu' difficile tu l'abbia gia' risolto.

E poi, teoricamente l'istruzione che hai impartito non apre 9 file con gedit, ma chiama 9 volte gedit, e questo lo sai gia' fare. Il fatto che poi gedit riconosca che e' gia' in esecuzione potrebbe non essere affar tuo, no?

High Flying
Sottovento
già già già.. c penso come fare..

Sirbako
10-05-2006, 22:33
credevo di riuscirci, invece non riesco a fare nenache quella singola, come posso fare?
il padre nn posso utilizzarlo perchè mi serve e quindi nn può fare exec varie, posso ciclare sul figlio ma come?
quante pipe dovrei creare?
se creo figli diversi questi nn comunicano tra loro sulla pipe?
come posso sfruttare per utilizzare una unica pipe per 3 processi (outPrimo->Insecondo Outsecondo->Interzo outterzo->video)?