過去問ドリル

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

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

コマンドの標準エラー出力だけをファイルに書き出すシェルの記法として正しいものはどれか。

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

正解:C

解説

シェルのリダイレクトでは、標準出力はファイルディスクリプタ1、標準エラー出力はファイルディスクリプタ2に割り当てられています。2>でファイルディスクリプタ2(標準エラー出力)だけをファイルへリダイレクトでき、標準出力(ファイルディスクリプタ1)には影響しません。

選択肢ごとの解説

  • A誤り。>>は標準出力を追記モードでリダイレクトする記法で、対象は標準出力です。
  • B誤り。1>は>と同じ意味で、標準出力をリダイレクトします。標準エラー出力は含まれません。
  • C正しい。2>は標準エラー出力(ファイルディスクリプタ2)だけをファイルへ書き出します。
  • D誤り。>は標準出力(ファイルディスクリプタ1)をリダイレクトする記法で、標準エラー出力は対象外です。
LinuCレベル1の問題を演習モードで解く