Я пытаюсь использовать bash, чтобы открыть новый дескриптор для записи дополнительных диагностических сообщений. Я не хочу использовать stderr, потому что stderr должен содержать только вывод программ, называемых bash. Я также хочу, чтобы пользовательский дескриптор был перенаправлен пользователем.
Я пробовал это:
exec 3>/dev/tty
echo foo1
echo foo2 >&2
echo foo3 >&3
Но когда я пытаюсь перенаправить fd 3, вывод все равно записывается на терминал.
$ ./test.sh >/dev/null 2>/dev/null 3>/dev/null
foo3