0

我正在尝试在 C 中实现一个子 shell。我已经有一个普通的 shell,它看起来像这样:

int status;
pid = fork();
if (pid < 0) {
    exit(1);
}
else if (pid == 0) {
    if (execvp(node->command.program, node->command.argv) < 0) {
        exit(1);
    }
}
else {
    waitpid(pid, &status, 0);
}

我试图弄清楚 subshel​​l 是如何工作的,以及它与上面的代码有何不同。

提前致谢。

4

0 回答 0