標準出力か、ファイル書き出しか

Mac ターミナルなど、コマンドラインツールを使っていると、メッセージが大量に出て追いきれなくなることってありますよね。

対応として、シンプルにファイルに書き出す事が多いと思います。

1$ brew upgrade > ./command_result.log

という感じで。

しかし、ファイル書き込みでは画面出力まで持っていかれ、テストなど、時間がかかる系の処理は途中経過がわからなくなって困ってしまいます。


標準出力 (画面) にメッセージを出しつつ、ファイルにも出力する 、そんなパーフェクトなことができればいいのに」

と思っていたら、やっぱりできるんですよね。

それが、 tee コマンドです。

tee コマンド

パイプで tee コマンドに渡すことで、標準出力とファイル出力を同時にやってくれます。

1$ brew upgrade | tee ./command_result.log

という感じです。

やりたかったことは、まさにこれでした。