Я знаю, как перенаправить вывод и как подавить их в bash. Теперь предположим, что я случайно забыл добавить часть перенаправления вывода в команду (например, 2>&1
или > /tmp/mystdout
), и мой фоновый процесс уже некоторое время запущен. Могу ли я по-прежнему переходить туда, где stdout
и stderr
ведется запись ? Я действительно хотел бы не убивать и перезапустить приложение.
Чтобы быть более конкретным, как спросил Жиль в своем комментарии, я хотел бы поиграть с этим в следующих сценариях:
- неправильный выходной файл
- забыл перенаправить
stderr
наstdout
или сочетание обоих
Например, у меня работает Apache, и я вижу дескрипторы файлов:
/proc/8019/fd/0 -> /dev/null
/proc/8019/fd/1 -> /dev/null
/proc/8019/fd/2 -> /var/log/apache2/error.log