よく使うコマンドですが,忘れがちなのでここにメモしておきます.
目次
構文
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'
