fish - Tubería tanto, stdout y stderr en la cáscara de pescado.
file descriptor (1)
Esa sintaxis también funciona en peces. Una demo
$ function cmd1
sh -c ''echo "this is stdout"; echo "this is stderr" >&2''
end
$ function cmd2
rev
end
$ cmd1 | cmd2
this is stderr
tuodts si siht
$ cmd1 2>&1 | cmd2
rredts si siht
tuodts si siht
También puedes usar cmd1 ^&1 | cmd2
cmd1 ^&1 | cmd2
para usar el símbolo de redireccionamiento stderr de fish.
Docs: https://fishshell.com/docs/current/index.html#redirects
Sé que esto ha sido un problema por un tiempo y encontré mucha discusión al respecto, sin embargo, no entendí cuál sería finalmente una forma de hacerlo: canalizar, stdout y stderr. En bash, esto sería simplemente:
cmd 2>&1 | cmd2