O Bash faz exatamente a mesma coisa para <&
e >&
, ou seja, usa a chamada de sistema dup()
para fazer uma cópia de um descritor de arquivo.
Quaisquer erros devido a uma tentativa de gravar em um arquivo aberto para leitura, etc., acontecerão quando o descritor de arquivo for usado para leitura ou escrita, ao contrário do modo como foi aberto.
Inicialmente, um Bash interativo tem /dev/tty
aberto para leitura-gravação como descritores de arquivo 0, 1 e 2.
Veja O que o exec 3 & lt; & amp; 1 faz no Unix & amp; ; Linux SE, onde o usuário cuonglm se deu ao trabalho de documentar esse comportamento usando strace
.