Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
4
Добавлен:
26.05.2014
Размер:
708 б
Скачать
#include <unistd.h>
#include <stdio.h>
#include <sys/types.h>
#include <fcntl.h>


main ()
{
	int i, in1, out1, in2, out2, f_des, buf1, buf2;
	int fd[2];
	char s[100]="error";

	in1=dup(0);
	buf1=dup(0);
	buf2=dup(1);

	if(pipe(fd)==(-1)) {	printf("\n error1");	exit (-1);}

	out1=fd[1];
	in2=fd[0];

	if (fork()==0)
		{
		dup2(in1, 0);
		dup2(out1, 1);
		close (in1);
		close (out1);
		execlp ("pr1", "pr1", 0);
		}


	dup2(in2, 0);
	close (1);
	f_des=open("./f.res", O_WRONLY|O_APPEND, 0766);

//if (f_des==-1) {write (1, s, sizeof (s));  exit (-1);}

//	f_des=creat("./f1.res", 0777);

	if (fork()==0) execlp ("pr2", "pr2", 0);

	dup2(buf1, 0);
	dup2(buf2, 1);
}
Соседние файлы в папке qw