Presumivelmente, ele escreve diretamente para /dev/tty
(de qualquer forma, você pode obter o mesmo comportamento)
#! / bin / bash
# set up the new file descriptor
# I have no idea why this needs exec, please tell me.
exec 3> /dev/tty
# test
echo "Stdout"
echo "Stderr" >&2
echo "Directly to tty" >&3
alternativamente, você pode simplesmente fazer:
echo "Directly to tty" >/dev/tty
$ ./foo.sh >/dev/null 2>/dev/null
Directly to tty
read
ainda funciona se você fizer isso.