過去問ドリル

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

GNUとUnixのコマンド/フィルタを使ったテキストストリームの処理

uniqコマンドの説明として誤っているものはどれか。

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

正解:B

解説

uniqコマンドは、入力中で隣接する(連続している)同じ内容の行だけをまとめて1行にします。ソートは行いません。そのため、ファイル全体から重複行を除去したい場合は、あらかじめsortで同じ内容の行を隣接させてからuniqに渡すのが一般的な使い方です。-cオプションを付けると、各行の直前に出現回数が付加されます。

選択肢ごとの解説

  • A誤り(正しい記述)。uniqは連続して重複する行を1行にまとめます。
  • B正しい(誤っている記述)。uniq自体はソート機能を持ちません。ソートしていない入力では、離れた位置にある同じ内容の行はまとめられません。
  • C誤り(正しい記述)。uniqは隣接する重複しか扱わないため、通常はsortと組み合わせて使います。
  • D誤り(正しい記述)。-cオプションは各行の出現回数を行頭に表示します。
LinuCレベル1の問題を演習モードで解く