私は次のコードを持っています:
pid_t pid = fork();
if (pid == -1)
{
// ...
}
else if (pid == 0)
{
stdin = someopenfile;
stdout = someotherfile;
stderr = somethirdopenfile;
execvp(args[0], args);
// handle error ...
}
else
{
// ...
}
問題は、呼び出しの入出力がexecvp()
ファイルではなくコンソールのままであるということです。明らかに私は何か間違ったことをしていますが、これを行う正しい方法は何ですか?