teeは標準入力の内容を標準出力とファイルの両方に書き込むコマンド。sudoとの組み合わせやプロセス置換など、活用の幅は広い。
記事一覧
- 【tee】-aで標準入力をファイルに追記する
-aでファイルを上書きせず末尾に追記する。 - 【tee】-iでSIGINTを無視する
-iでSIGINTを受け取ってもteeプロセスを終了させない。 - 【tee】複数ファイルに同時出力する 複数のファイルパスを渡して同時に書き込む。
- 【tee】標準出力を捨ててファイルにだけ保存する
tee ファイル > /dev/nullで画面表示を抑える。 - 【tee】sudo teeでroot権限が必要なファイルに書き込む
sudo付きリダイレクトが失敗する理由と、sudo teeでの書き込み方法。 - 【tee】sudo tee -aでroot権限のファイルに追記する
root権限のファイルに追記する場合は
sudo tee -aを使う。 - 【tee】パイプラインの途中結果を覗き見てデバッグする
tee /dev/stderrでパイプラインの途中出力を画面に表示する。 - 【tee】curlのレスポンスを保存しつつ画面でも確認する
curl | tee ファイル | jqでAPIレスポンスを保存しながら確認する。 - 【tee】1つの出力を複数コマンドに分岐する プロセス置換を複数渡して同じ入力を複数コマンドに分岐する。
- 【tee】macOS標準とHomebrewのGNU版の違い macOS標準のBSD版とHomebrewのGNU coreutils版でオプションが異なる。
- 【tee】GNU teeの-pでパイプ向けモードにする
-pでパイプが壊れてもファイルへの書き込みを続ける。 - 【tee】GNU teeの--output-errorで書き込みエラー時の挙動を制御する
--output-error=MODEで書き込みエラー時に警告するか終了するかを指定する。
関連記事
- teeコマンドで標準エラー出力もファイルに出力する
|&や2>&1を使って標準エラー出力も含めてteeする。 - 標準入出力を直接gzip圧縮・解凍する
tee >(gzip -c > ファイル.gz)でgzip圧縮しながら保存する。 - 【Shell Script】プロセス置換 <(command) でコマンド出力をファイルとして渡す
tee >(コマンド)でプロセス置換により出力を分岐する仕組みを扱う。
\第一線のプログラマーの行動原理を学べる!/
