#include #include // deve invocar este programa com 2 argumentos na linha de comando // exemplo: programa who wc #define Read 0 #define Write 1 main(int argc, char *argv[]) { int fd[2]; pipe(fd); if (fork() == 0) { /* filho */ close(fd[Write]); dup2(fd[Read], 0); // redireciona input close(fd[Read]); execlp(argv[2], argv[2], NULL); perror("ligação não sucedida"); } else { /* pai */ close(fd[Read]); dup2(fd[Write], 1); // redireciona output close(fd[Write]); execlp(argv[1], argv[1], NULL); perror("ligação não sucedida"); } }