Do manual de peixe:
[The File Descripter may be] an ampersand followed by a minus sign (&-). The file descriptor will be closed
Do wiki do Arch:.
Silencing standard output: $ command > &-
A partir disso, esperava que ele agisse como um alias para /dev/null
, mas a experimentação rápida na linha de comando revela que isso não é verdade:
$ echo hello >&-
Error while writing to stdout
write_loop: Bad file descriptor
Além disso, curiosamente, se adicionarmos um espaço antes do & nós recebemos um erro diferente:
$ echo hello > &-
Expected a string, but instead found a '&'
Que diabos está acontecendo aqui? Eu estou correndo peixe 2.2.0