Como don_crissti já mencionado, este é o comportamento padrão de zsh
e pode ser desativado com unsetopt multios
.
Veja também a página de manual de zshmisc
.
De este , eu entendo que &> /dev/null
em zsh redireciona os stdout
e stderr
codificar%. Portanto,
echo a &> /dev/null
não fornece saída.
No entanto, quando faço
echo a &> /dev/null | cat
cat irá imprimir o /dev/null
, onde eu esperava que não imprimisse nada.
O que está acontecendo aqui?
Como don_crissti já mencionado, este é o comportamento padrão de zsh
e pode ser desativado com unsetopt multios
.
Veja também a página de manual de zshmisc
.
Note that a pipe is an implicit redirection; thus
date >foo | cat
writes the date to the file ‘foo’, and also pipes it to cat.
A partir daqui: link .
Assim, com multios
option echo a &> /dev/null | cat
é equivalente a echo a 2>1 | tee /dev/null | cat
em outro shell, como bash
.
Tags zsh io-redirection