過去問ドリル

LinuCレベル1 GNUとUnixのコマンド 問9

GNUとUnixのコマンド/ストリーム、パイプ、リダイレクトの使用

リダイレクト記法の説明として、誤っているものはどれか。

当サイトのオリジナル問題(LinuCレベル1の出題範囲「GNUとUnixのコマンド」に対応。実際の試験問題ではありません)

正解:D

解説

> は標準出力を指定したファイルへ上書きリダイレクトし、>> は末尾に追記します。2>&1 は、ファイルディスクリプタ2(標準エラー出力)の出力先をファイルディスクリプタ1(標準出力)の出力先と同じにする記法で、標準エラー出力と標準出力を1つの流れにまとめたいときに使います。< は逆にファイルの内容を標準入力として読み込む入力リダイレクトで、標準エラー出力への書き込みではありません。

選択肢ごとの解説

  • A誤り(正しい記述)。>はファイルが存在する場合、内容を上書き(切り詰めてから書き込み)します。
  • B誤り(正しい記述)。2>&1は標準エラー出力を標準出力と同じ出力先に統合します。
  • C誤り(正しい記述)。>>はファイルの末尾に追記します。
  • D正しい(誤っている記述)。<は入力リダイレクトで、fileの内容を標準入力として読み込みます。標準エラー出力への書き込みではありません。
LinuCレベル1の問題を演習モードで解く