【Linuxコマンド】teeで標準出力とファイルに出力する方法

こんにちは!エンジニア兼ライターのヤマシタです。

Linuxでは標準出力した内容をそのままファイルに出力できる「tee」コマンドがあります。

ここでは「tee」コマンドについて、以下の内容で解説していきます。

tee_image

この記事では「tee」コマンドについてわかりやすく解説していますので、ぜひ使い方を覚えておきましょう!

teeコマンドとは

「tee」コマンドは標準出力した結果をファイルに出力できるコマンドです。

コマンドの結果を標準出力できて、ファイルにも内容を出力できるので実はあまり知られていないけど非常に便利なコマンドです。

通常teeコマンドでファイルに出力する場合は以下のように記述します。

$ tee ファイル名

実行すると指定したファイルが作成され、入力を行うことで標準出力とファイル出力が実行されます。

teeコマンドの使い方

それでは「tee」コマンドの使い方を見ていきましょう。

入力した内容をファイルに出力する

まずは新規ファイルにキーボードから入力した内容を標準出力及びファイルに出力する方法を紹介します。

$ tee fruits.txt

tee_image01
ここではキーボードから「apple」「orange」「melon」と入力しましたが、入力した内容が標準出力されて、ファイルfruits.txtにも出力されています。

なお、teeコマンドは「Ctrl + C」で終了できます。

コマンド結果をファイルに出力する

「tee」コマンドの便利な使い方として、前述したようにコマンド結果を出力し、ファイルにも結果を出力されるので実行結果をすぐに確認したい場合はリダイレクト「>」よりも便利です。

実行結果をファイルに出力するにはパイプ「|」「コマンド | tee ファイル名」のように指定します。

以下では現在のユーザー一覧を出力し、かつ結果をテキストファイルにも書き込んでいます。

$ cat /etc/passwd | tee pass.txt

コマンド結果が出力され、pass.txtにも内容が書き込まれます。

複数のファイルに出力する

コマンドの実行結果を複数のファイルに出力したい場合は「コマンド | tee ファイル1 tee ファイル2 ファイル3」のように指定します。

以下ではlsでvarディレクトリのファイルの一覧をそれぞれのファイルに出力しています。

ls /var | tee test01.txt tee test02.txt tee test03.txt

teeコマンドのオプション

「tee」コマンドで使用するオプションは以下となります。

  • -a:ファイルに内容を追記する
  • -l:割り込みのシグナルを無視する

ファイルに内容を追記する

「tee」コマンドは存在するファイルを開いた場合、内容が上書きされてしまいますが、出力結果を追記したい場合は「-a」オプションを使用します。

以下では先ほど作成したfruits.txtに内容を追記しています。

$ tee -a fruits.txt

tee_image02

fruits.txtに内容が追記されました!

Linuxについてもっと知りたい方へ

そもそもLinuxについて、

「実はなんとなくしか理解していない…」
「Linuxを効率よく学習する方法が知りたい」

といった情報を知りたい方は、以下の記事も参考にしてみてくださいね!



まとめ

ここでは、Linuxで標準出力と結果をファイルに出力する「tee」コマンドについて、

  • teeとは
  • teeの使い方
  • teeの便利な使い方
  • teeのオプションと使い方

などについて解説しました。

teeコマンドはメジャーなコマンドではありませんが、使い方次第では非常に便利なコマンドです。

もしteeコマンドの使い方を忘れてしまったら、この記事を参考にしてくださいね。

LINEで送る
Pocket

最短でエンジニアを目指すなら侍エンジニア塾

cta_under_bnr

侍エンジニア塾は業界で初めてマンツーマンレッスンを始めたプログラミングスクールです。これまでの指導実績は16,000名を超え、未経験から数多くのエンジニアを輩出しています。

あなたの目的に合わせてカリキュラムを作成し、現役エンジニア講師が専属であなたの学習をサポートするため効率よく学習を進めることができますよ。

無理な勧誘などは一切ありません。まずは無料体験レッスンを受講ください。

無料体験レッスンの詳細はこちら

書いた人

ヤマシタ

エンジニア歴10年のフリーランスエンジニア。ITに関わるさまざまなコンテンツの企画・制作も行っています。
ITに関してはノウハウ系、ライフハック系、トレンド系など、200本以上の執筆経験があります。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説