Linuxコマンド虎の巻

find

findは、ファイルやディレクトリを検索するコマンドです。

ファイルの場所が分からなくなってしまった時に便利です。
*.txtというようなワイルドカードで検索できます。

構文

(構文)
find [<ファイル名/ディレクトリ名>] [オプション] [<検索キーワード>]
【オプション】
オプション説明
-atime nn日前にアクセスされたファイル
-を付けると今日からn日前まで全て対象
例)0→今日が対象
  3→3日前のみ対象
  -3→3日前から今日までが対象
  +3→3日前より以前が対象
-mtime nn日前に更新されたファイル
-を付けると今日からn日前まで全て対象
※例は-atime欄と同じ
-empty空のファイルを対象
-type f/df:ファイルを対象 d:ディレクトリを対象
-size サイズ指定したサイズ以上(以下)のファイルを対象
「+:以上 -:以下 c:バイト k:キロバイト」
例)+100k→100Kバイト以上 -200c→200バイト以下

サンプル

カレントディレクトリ内の拡張子が.txtのファイル一覧を取得する

$ find *.txt

hogeディレクトリ内の拡張子が.txtのファイル一覧を取得する

$ find hoge/*.txt

サイズが100KB以上のファイル一覧を取得する

$ find -size +100k

カレントディレクトリの今日アクセスされたファイルを一覧を取得する

$ find -atime 0

hogeディレクトリ内のディレクトリの一覧を取得する

$ find hoge -type d

備考

  • findは、「find:見つける」という英単語が元になっています。