Linux・シェル4 択難易度 基礎

次のコマンドが表示するものは?

find . -name "*.log" -type f

正答

  1. カレント直下にある .log ファイルの中身
  2. カレント以下にある、名前が .log で終わる通常ファイルのパス
  3. カレント以下にある、名前が .log で終わるディレクトリ
  4. .log ファイルの中で log という文字列を含む行

解説

find は指定したディレクトリ(ここでは .)以下を再帰的にたどり、条件に合うパスを表示する。-name "*.log" は名前のパターン、-type f は通常ファイルという条件で、両方を満たすものだけが出る。ディレクトリを探すなら -type d にする。find はファイルの中身は見ないので、選択肢 4 のような中身の検索は grep -r の役割である。パターンを引用符で囲むのは、シェルが先に展開してしまうのを防ぐためである。

参考: man7.org

find

この問題を含む Linux・シェル のテストを制限時間つきで解く

Linux・シェルクイズへ