103.4標準
generate-reportの出力を端末へ表示する。
同じ内容でprimary.logとsecondary.logを上書き作成する。
適切なコマンド列はどれか。
× 不正解
teeは標準入力を標準出力と複数ファイルへ複写できる。-aを省略すると指定ファイルを上書きする。
詳細解説
誤り
generate-report > primary.log secondary.log1つ目だけがリダイレクト先となり、secondary.logはコマンド引数になる。
複数のリダイレクト先をこの形では指定できない。
誤り
generate-report | tee -a primary.log secondary.log2ファイルへ保存できるが、-aで既存内容へ追記する。
追記になり、上書き要件に反する。
誤り
generate-report | cat primary.log secondary.logcatは指定ファイルを読み、入力の同時保存をしない。
入力保存ではなく既存ファイルを読み込む。
正しい
generate-report | tee primary.log secondary.log標準入力を標準出力へ複写しながら、指定した両ファイルへ上書きする。
正解。端末と2ファイルへ同じ内容を送る。
実際に確かめる
一時的な検証環境で実行できる例です。
printf data | tee /tmp/kp-primary.log /tmp/kp-secondary.log; printf '|'; paste -d, /tmp/kp-primary.log /tmp/kp-secondary.log; rm /tmp/kp-primary.log /tmp/kp-secondary.log期待される結果
data|data,data理解のポイント
- teeは画面とファイルへ分岐
- 複数ファイルを指定可能
- -aなしは上書き
確認時の注意
- 確認環境: GNU coreutils 9.x
基礎のおさらい
T字分岐
teeはパイプラインの流れを標準出力へ続けながら、ファイルにも分岐させる。
上書き時期
-aなしではteeが各出力ファイルを切り詰めて開く。
問題IDKP-103-072
確認環境GNU coreutils 9.x
最終技術確認2026-08-12
誤り・権利侵害を報告