Linuxコマンド · 1 min read · Sep 20, 2025
初心者のためのLinux teeコマンドの説明(6つの例)
コマンドの出力を手動で追跡し、同時にその出力がファイルに書き込まれていることを確認したい場合があります。これを行うためのLinuxツールを探しているなら、目的のために作られたコマンドteeが存在することを知って嬉しく思うでしょう。
このチュートリアルでは、理解しやすい例を使ってteeコマンドの基本を説明します。しかし、その前に、この文章で使用されるすべての例はUbuntu 16.04 LTSでテストされていることを言及しておく価値があります。
Linux teeコマンド
teeコマンドは基本的に標準入力から読み取り、標準出力とファイルに書き込みます。以下がコマンドの構文です:
tee [OPTION]... [FILE]...そして、manページは次のように説明しています:
標準入力を各FILEにコピーし、標準出力にもコピーします。以下のQ&Aスタイルの例は、コマンドがどのように機能するかをより良く理解するのに役立つはずです。
Q1. Linuxでteeコマンドを使用するには?
何らかの理由でpingコマンドを使用しているとしましょう。
ping google.com
そして、出力が並行してファイルにも書き込まれることを望んでいます。そこでteeコマンドを使用できます。
ping google.com | tee output.txt以下のスクリーンショットは、出力がstdoutに書き込まれると同時に’output.txt’ファイルにも書き込まれたことを示しています。

これでteeの基本的な使い方が明確になるはずです。
Q2. teeがファイルに情報を追加することを確認するには?
デフォルトでは、teeコマンドは再度使用するとファイル内の情報を上書きします。しかし、必要に応じて、-aコマンドラインオプションを使用してこの動作を変更できます。
[command] | tee -a [file]基本的に、-aオプションはteeにファイルに情報を追加するよう強制します。
Q3. teeが複数のファイルに書き込むようにするには?
これは非常に簡単です。ファイル名を指定するだけです。
[command] | tee [file1] [file2] [file3]例えば:
ping google.com | tee output1.txt output2.txt output3.txt
Q4. teeが1つのコマンドの出力を別のコマンドにリダイレクトするには?
teeを使用して出力をファイルに同時に書き込むだけでなく、他のコマンドへの入力として出力を渡すこともできます。例えば、以下のコマンドは、’output.txt’にファイル名を保存するだけでなく、wcを通じてoutput.txtファイル内のエントリの数を教えてくれます。
ls file* | tee output.txt | wc -lQ5. teeを使用して特権を昇格させてファイルに書き込むには?
Vimエディタでファイルを開き、多くの変更を加えたとしましょう。そして、これらの変更を保存しようとしたときに、ルート所有のファイルであることを認識させるエラーが発生しました。つまり、これらの変更を保存するにはsudo権限が必要です。
このようなシナリオでは、teeを使用してその場で特権を昇格させることができます。
:w !sudo tee %前述のコマンドは、ルートパスワードを要求し、その後変更を保存できるようにします。
Q6. teeが割り込みを無視するようにするには?
-iコマンドラインオプションを使用すると、teeは通常ctrl+cキーの組み合わせを押したときに発行される割り込み信号(SIGINT)を無視します。
[command] | tee -i [file]これは、ctrl+cでコマンドを終了させたいが、teeには優雅に終了してほしい場合に便利です。
結論
teeは非常に便利なコマンドであることに同意するでしょう。ここでは、その基本的な使い方と大部分のコマンドラインオプションについて説明しました。このツールは急な学習曲線を持っていないので、これらの例をすべて練習すれば、問題なく使えるようになるでしょう。詳細については、ツールのmanページにアクセスしてください。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。