对于我的学校项目,我正在实施一个外壳,我需要工作控制方面的帮助。如果我们输入一个命令,比如cat &
,那么因为&
它应该在后台运行,但它不起作用。我有这个代码:
{
int pid;
int status;
pid = fork();
if (pid == 0) {
fprintf(stderr, "Child Job pid = %d\n", getpid());
execvp(arg1, arg2);
}
pid=getpid();
fprintf(stderr, "Child Job pid is = %d\n", getpid());
waitpid(pid, &status, 0);
}