我需要实现 ps -auxj、grep "user id" 和 wc。我已经有字数了,但是我不确定在其他有参数的情况下如何做。这就是我到目前为止所拥有的。
int main() {
int pfd[2];
int pid;
if (pipe(pfd) == -1) {
perror("pipe failed");
exit(-1);
}
if ((pid = fork()) < 0) {
perror("fork failed");
exit(-2);
}
if (pid == 0) {
close(pfd[1]);
dup2(pfd[0], 0);
close(pfd[0]);
execlp("wc", "wc", (char *) 0);
perror("wc failed");
exit(-3);
}
else {
close(pfd[0]);
dup2(pfd[1], 1);
close(pfd[1]);
execlp("ls", "ls", (char *) 0);
perror("ls failed");
exit(-4);
}
exit(0);
}
在正确方向上的任何帮助都会很棒。