#include <stdio.h>
#include <unistd.h>
#include <ctype.h>
#include <fcntl.h>
int main()
{
int data, pipe1, pipe2;
pipe1 = open("pipe1",O_RDWR);
pipe2 = open("pipe2",O_RDWR);
read(STDIN_FILENO,&data,sizeof(data));
write(pipe1,&data, sizeof(data));
data+=1;
write(pipe2,&data, sizeof(data));
close(pipe1);
close(pipe2);
return 0;
}
我有这个程序。让我们称它为prog1,它将stdin值写入pipe1并将stdin值+1写入pipe2。
#include <stdio.h>
#include <unistd.h>
#include <ctype.h>
#include <fcntl.h>
int main()
{
int data, pipe1;
pipe1 = open("pipe1",O_RDWR);
read(pipe1,&data,sizeof(data));
write(STDOUT_FILENO,&data, sizeof(data));
close(pipe1);
return 0;
}
,此程序将其称为prog2,它从pipe1读取并写入stdout。 除了打开pipe2外,我还有与prog2相同的prog3。
如何将它们结合在bash中以正确运行。 我已经尝试过prog1&prog 2&prog3,但是它不起作用