Я пытаюсь перенаправить stdout и stderr в файл, а затем восстановить их к исходным настройкам.Я успешно перенаправил вывод в файл, но я не могу восстановить их из tty.Вот код, который у меня есть:
fid = open("/dev/tty", O_WRONLY);
if (fid < 0) {
fprintf(stderr, "Opening TTY failed.");
exit(1);
} else {
close(1);
dup(fid);
close(fid);
}
открытый вызов на tty всегда терпит неудачу.(возвращает -1).Что-то в корне неверно, что я пытаюсь сделать?
Я также подумал, что, возможно, это может быть проблема с разрешениями, поэтому я проверил их:
crw-rw-rw- 1 rootколесо 2, 0 октября 21 10:46 / dev / tty
Я разрабатываю на Snow Leopard то, что стоит,
Заранее благодарен за любую помощь.