[so] [Tema 1] pipe
Ciprian Mihai Coman
ciprianmihai.coman at gmail.com
Fri Mar 12 17:13:53 EET 2010
Salut,
Imi poate explica cineva cum se creaza un pipe intre doua procese pentru
STDOUT -> STDIN. Eu am facut ceva de genul (exemplu pentru ls | grep h):
pipe(fd);
fork
close(fd[1])
dup2(fd[0], stdin)
executa grep
close(fd[0])
exit
close(fd[0])
dup2(fd[1],stdout)
executa ls
close(fd[1])
waitpid(proces fork)
Problema este ca nu se termina grep. Aparent stdout din parinte ramane
redirectat catre copil si dupa ce inchid ambele capete ale pipe-ului din
parinte (cout << "here" rezulta in printarea "here" in copil).
Multumesc,
--
Ciprian Coman
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20100312/a95cf298/attachment.htm>
More information about the so
mailing list