Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
7
Добавлен:
26.05.2014
Размер:
556 б
Скачать
#include <stdio.h>
#include <unistd.h>
void Start( char* name)
{
  // …б«Ё Ї®в®¬®Є
  if( fork() == 0 )
  {
     execlp( name, name, 0 );
  }
}

int main( int argc, char* argv[] )
{
  int i, fd[2], in, out;
  int buf1, buf2;
  in = dup(0);
  buf1 = dup(0);
  buf2 = dup(1);
  for( i = 1; i < argc - 1; i++ )
  {
    pipe( fd );
    out = fd[1];
    dup2(in,0);
    dup2(out,1);
	close(in);
	close(out);
    Start( argv[i]);
    in = fd[0];
  }
	dup2(in,0);
	dup2(buf2,1);
	Start(argv[i]);
	dup2(buf1,0);

  
}


 


Соседние файлы в папке prog