Fish Shellでstdoutとstderrを印刷して記録します。

Fish Shellでstdoutとstderrを印刷して記録します。

私はシェルを使用しており、fishstdoutとstderrを2つの別々のファイルに書き込み、同時に端末から印刷しようとしています(たとえば、各ストリームをtee

やりますbash(参照https://stackoverflow.com/a/692407/5082444):

command > >(tee -a stdout.log) 2> >(tee -a stderr.log >&2)

fishシェルで同じ目標をどのように達成できますか?

ベストアンサー1

次のようなことができます

begin; command | tee -a stdout.log ; end ^| tee -a stderr.log >&2

ただし、最初のエントリがteestderrに何かを書くと、レコードも残りますが、これはbashバージョンの場合には該当しません。

おすすめ記事