Ответ 1
Этот синтаксис работает и в рыбе. Демонстрация:
$ 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
Вы также можете использовать cmd1 ^&1 | cmd2
для использования символа перенаправления рыбы stderr.
Документы: https://fishshell.com/docs/current/index.html#redirects