Quelqu'un peut-il expliquer ce qui se passe dans cette commande:
echo foo >&2 | grep foo
Zsh (5.0.2) imprime foo
deux fois. Un apparemment à stdout et un à stderr, depuis l'exécution de ces commandes:
{ echo foo >&2 | grep foo } >/dev/null
et:
{ echo foo >&2 | grep foo } 2>/dev/null
les deux n'impriment foo
qu'une seule fois.
{echo foo >&2} | grep foo
, si vous voyez ce que j'essaie de dire. Je pensais que la commande que j'ai demandée ci-dessus aurait redirigé stdout vers stderr, puis dirigé stdout vide vers grep.