Isso soa como meu comentário!
O teste com -e
retornará true para arquivos não regulares: diretórios, pipes, soquetes, dispositivos etc.
Observe que os links simbólicos são um caso especial - test
normalmente usa o tipo do arquivo apontado para , em vez do próprio link (exceto test -L
, também conhecido como test -h
).
Na revisão referenciada, você pode querer ler de um FIFO. (Por outro lado, certamente não funcionará para ler em um diretório).
Mais adiante na revisão, você realmente não quer sobrescrever um dispositivo (embora você queira escrever no FIFO, ajuste-o de acordo com suas necessidades).