pipe()/dup2() example
/* equivalent to “sort < file1 | uniq” */
FILE *fp = fopen( “file1”, “r” );
dup2( fileno(fp), fileno(stdin) );
dup2( fd[1], fileno(stdout) );
close( fd[0] ); close( fd[1] );
execl( “/usr/bin/sort”, “sort”, (char *) 0 ); exit( 2 );
dup2( fd[0], fileno(stdin) );
close( fd[0] ); close( fd[1] );
execl( “/usr/bin/uniq”, “uniq”, (char *) 0 ); exit( 3 );