Linux・シェル4 択難易度 標準

次のコマンドでの tee の役割は?

make 2>&1 | tee build.log

正答

  1. 出力を build.log に保存し、画面には何も出さない
  2. 出力を画面に表示しながら、同時に build.log にも保存する
  3. build.log の内容を make の入力として渡す
  4. 出力のうちエラー行だけを build.log に振り分ける

解説

tee は標準入力から読んだ内容を標準出力に流しつつ、引数のファイルにも書き込む。配管の T 字継手が名前の由来で、パイプの途中で出力を分岐させたいときに使う。画面に出さずファイルだけなら > build.log で十分で、tee を使う意味は「見ながら残す」ことにある。既存ファイルに追記したいときは tee -a。選択肢 4 のような振り分け機能は無く、エラーだけ残すなら 2> build.log のようにリダイレクトで分ける。

参考: www.gnu.org

teepipe

この問題を含む Linux・シェル のテストを制限時間つきで解く

Linux・シェルクイズへ