103.2基礎
header.txtの内容に続けてbody.txtの内容を標準出力へ表示する。
元の2ファイルは変更しない。
適切なコマンドはどれか。
× 不正解
catは指定されたファイルを順番に読み、内容を標準出力へ連結する。リダイレクトしない限り入力ファイルは変更しない。
詳細解説
正しい
cat header.txt body.txt2ファイルを引数の順に読み、連結した内容を標準出力へ書く。
正解。header.txtの全文に続けてbody.txtの全文を出力する。
誤り
cat body.txt header.txt連結順が逆になり、body.txtが先に表示される。
ファイルの指定順が逆なので、本文がヘッダーより先になる。
誤り
head header.txt body.txt各ファイルの先頭部分だけを表示するため、全文の連結にならない。
headは各入力の先頭部分だけを取り出す。
誤り
paste header.txt body.txt対応する行を横方向へ結合するため、上下に連結する要件と異なる。
pasteは同じ行番号の内容を横に並べる。
実際に確かめる
一時的な検証環境で実行できる例です。
printf 'HEADER
' > /tmp/kp-header.txt
printf 'BODY
' > /tmp/kp-body.txt
cat /tmp/kp-header.txt /tmp/kp-body.txt
rm /tmp/kp-header.txt /tmp/kp-body.txt期待される結果
HEADER
BODY理解のポイント
- catはファイル内容を連結する
- 引数の順が出力順になる
- 既定の出力先は標準出力
確認時の注意
- 確認環境: GNU coreutils 9.x
基礎のおさらい
ストリームへの出力
catは内容を標準出力へ送るため、パイプやリダイレクトへ接続できる。
入力の保持
catだけでは入力ファイルを書き換えない。出力先を入力自身へ上書きすると内容を失うため注意する。
問題IDKP-103-032
確認環境GNU coreutils 9.x
最終技術確認2026-08-12
誤り・権利侵害を報告