teeコマンドの使い方を完全ガイド!画面表示しながらファイル保存するLinux入門
生徒
「コマンドの結果を画面に表示しつつ、ファイルにも保存したいんですが、できますか?」
先生
「できますよ。Linuxではteeコマンドを使うと、画面に表示しながらファイルにも保存できます。」
生徒
「画面にも出て、ファイルにも保存されるって便利ですね!難しくないですか?」
先生
「とてもシンプルです。パイプと組み合わせるだけなので、初心者でもすぐ使えます。」
1. teeコマンドとは?
teeコマンドは、Linuxで標準出力の内容を画面に表示しながらファイルにも保存するためのコマンドです。
通常、コマンドの結果は画面に表示されるだけですが、teeを使うことで「表示」と「保存」を同時に行えます。
イメージとしては、水道の分岐のようなものです。1つの流れを2つに分けて、画面とファイルに同時に出力します。
2. teeコマンドの基本構文
teeコマンドは、パイプと一緒に使うのが基本です。
コマンド | tee ファイル名
パイプとは、コマンドの結果を次のコマンドに渡す仕組みのことです。
teeはその結果を受け取り、画面表示とファイル保存を同時に行います。
3. 実際に使ってみよう
まずは簡単な例として、ディレクトリ一覧を表示しながらファイルに保存してみます。
ls | tee list.txt
file1.txt file2.txt Documents Downloads
このコマンドでは、lsの結果が画面に表示されると同時に、list.txtにも保存されます。
4. ファイルに追記する方法
通常のteeはファイルを上書きしますが、追記したい場合は-aオプションを使います。
echo "追加のデータ" | tee -a list.txt
追加のデータ
これにより、既存のファイル内容を消さずに、後ろに追加できます。
5. 複数ファイルに同時保存する方法
teeは複数のファイルに同時に書き込むこともできます。
echo "ログ出力" | tee file1.txt file2.txt
ログ出力
このようにすると、同じ内容が複数のファイルに保存されます。
6. root権限とteeの関係
管理者権限が必要なファイルに書き込む場合、teeは特に便利です。
echo "設定追加" | tee /etc/sample.conf
設定追加
通常のリダイレクトでは権限エラーになる場合でも、teeなら書き込みが可能になるケースがあります。
7. teeとリダイレクトの違い
>や>>はファイルに出力するだけですが、画面には表示されません。
一方でteeは、画面表示とファイル保存を同時に行える点が大きな違いです。
echo "テスト" > file.txt
この場合、画面には何も表示されず、ファイルにのみ保存されます。
teeは「確認しながら保存したい」という場面で特に役立ちます。
8. teeコマンドが活躍する場面
teeコマンドは、ログの保存や設定確認などでよく使われます。
- コマンド結果を確認しながらログを保存したいとき
- エラー調査のために出力を記録したいとき
- 設定ファイルを更新しつつ内容を確認したいとき
初心者でも扱いやすく、実務でもよく使われる重要なコマンドです。
まとめ
teeコマンドはLinuxコマンドの中でも非常に実用性が高く、標準出力を画面に表示しながら同時にファイルへ保存できる便利な機能を持っています。Linux初心者から実務レベルのエンジニアまで幅広く利用されており、ログ取得やデバッグ作業、設定ファイルの編集など、さまざまな場面で活躍します。:contentReference[oaicite:0]{index=0}
通常のリダイレクトでは、コマンドの出力結果はファイルに保存されるだけで画面には表示されません。しかしteeコマンドを使うことで、出力内容を確認しながらファイルにも保存できるため、作業の効率が大幅に向上します。この特徴は、特にコマンドの実行結果を確認しながら記録したい場合に非常に役立ちます。
またteeコマンドはパイプと組み合わせて使用することが基本となります。パイプを使うことで、あるコマンドの出力結果をteeコマンドに渡し、その結果を分岐して画面表示とファイル保存を同時に行うことができます。この仕組みはLinuxの基本である標準入力と標準出力の理解にもつながり、Linux操作の基礎力を高める重要なポイントとなります。
teeコマンドのオプションであるaを使用すると、既存のファイルに対して上書きではなく追記が可能になります。ログファイルの蓄積や履歴の記録など、継続的にデータを保存したい場合には非常に有効です。さらに複数のファイルを指定することで、同じ出力を複数の場所に保存することもできるため、バックアップや検証用途にも応用できます。
root権限が必要なファイルへの書き込みにおいてもteeコマンドは重要な役割を果たします。通常のリダイレクトでは権限エラーが発生するケースでも、teeを使うことで適切にファイルへ書き込むことができるため、システム管理者にとっても欠かせないコマンドの一つです。
実務においては、システムログの取得、エラー解析、設定変更の確認、コマンド出力の記録など、さまざまな場面でteeコマンドが利用されます。特にサーバー運用やインフラエンジニアの業務では頻繁に登場するため、基本的な使い方をしっかりと理解しておくことが重要です。
ls | tee sample.txt
file1.txt file2.txt Documents
echo "ログ追記" | tee -a sample.txt
ログ追記
echo "複数保存" | tee file1.txt file2.txt
複数保存
echo "設定変更" | tee /etc/sample.conf
設定変更
生徒
teeコマンドは画面とファイルに同時に出力できるんですよね。これまでリダイレクトしか使ったことがなかったので新鮮です。
先生
そうですね。teeコマンドは確認しながら保存できるのが最大の特徴です。ログを取りながら作業する場面で特に役立ちます。
生徒
パイプと一緒に使うのがポイントなんですね。Linuxの基本の仕組みも理解できそうです。
先生
その通りです。標準出力やパイプの理解が深まると、他のコマンドとの組み合わせも自在にできるようになります。
生徒
aオプションで追記できるのも便利ですね。ログ管理に使えそうです。
先生
はい。ログを残す場面ではほぼ必須の使い方です。実務でも頻繁に使われるので覚えておきましょう。
生徒
root権限の話も重要でした。普通のリダイレクトと違う動きになるのは知りませんでした。
先生
そこも重要なポイントです。システム設定を変更するときにはteeコマンドが活躍します。Linuxコマンドの中でも実用性が高いので、ぜひ繰り返し使って慣れてください。