よく使うコマンドですが,忘れがちなのでここにメモしておきます.
目次
構文
find <directory> -type f -name '*.<extension>'
複数条件
find <directory> -type f -name '*.<extension1>' -or -name '*.<extension2>'
特定のディレクトリを除外する
find <directory> -type d -path "<exclude_path>" -prune -or -type f -print
-type d -path "<exclude_path>" -prune
が除外するためのオプションです.
詳しく見ると-prune
が除外条件で-or
以降で全ファイルの指定しています.すなわち,<exclude_path>
を除外した全ファイルが対象となります.
さらに条件を追加する場合-and
オプションなどを使用します.
使い方
カレントディレクトリ配下の「.cpp」を検索する場合
find . -type f -name '*.cpp'
カレントディレクトリ配下の「.cpp」と「.hpp」を検索する場合
find . -type f -name '*.cpp' -or -name '*.hpp'