名前を指定して検索
特定の名前のファイル・ディレクトリーを探す。
-name
オプションに続けて”名前”で検索- 大文字/小文字が区別される(case sensitive)
1 |
$ find -name "search_name" |
大文字・小文字を問わず名前を指定して検索する場合は、-iname
を指定する(case insensitive)。
1 |
$ find -iname "search_name" |
この場合"SEARCH_NAME"
、"Search_Name"
などもヒットする。
種類を指定して検索
-type 形式コード
を指定。以下はファイルのみを検索する例。
1 |
$ find -iname "search_name" -type f |
主な形式コードは以下のとおり。
-type f
:ファイルを検索-type d
:ディレクトリーを検索-type l
:シンボリックリンクを検索
ワイルドカード
'*'
は任意長の文字列。以下の例では'.conf'
で終わるファイルがヒット。
1 |
$ find -iname "*.conf" -type f |
'?'
は任意の1文字にヒット。以下の例では'*'
と組み合わせていて、'loc'
に3文字が続き、任意の拡張子を持つファイルが検索される。
1 |
$ find -iname "loc???.*" -type f |
たとえば以下のようなファイルがヒットする。
locale.rb
locker.c
locker.js
lock-i.ri
サイズ指定
-size
オプションにサイズ、単位、以上/未満の符号をつけて検索する。
-size [符号なし/+/-]数値[c/k/M/G/b]
単位記号
c
:bytesk
:K bytesM
:M bytesG
:G bytes
前置符号
- 符号なし:指定サイズに等しいファイル
+
:指定サイズ以上のファイル-
:指定サイズ未満のファイル
以下の例では100キロバイトちょうどのファイルがヒットする。
1 |
$ find -type f -size 100k |
以下の例では10Mバイト以上のファイルがヒットする。
1 |
$ find -type f -size +10M |
以下の例では10Kバイト未満のファイルがヒットする。
1 |
find -type f -size -10k |
-size
の組み合わせが可能で、以下の例では10Mバイト以上、15Mバイト未満のファイルがヒットする。
1 |
$ find -type f -size +10M -size -15M |
時刻指定
時刻の種類には以下の三種類がある。
- Access Time: ファイルに最後にアクセスがあった時刻
- Modification Time: ファイル内容が最後に変更された時刻
- Change Time: ファイルの状態(inodeデータ)が最後に変更された時刻
3つの時刻に対して、指定する数値が日単位か分単位かでオプション名が変わる。
- 日単位:
-atime
,-mitime
,-ctime
- 分単位:
-amin
,-mmin
,-cmin
各オプションに、時間の数値と前置符号を指定する。
-atime/-mtime/-ctime [符号なし/+/-]日数
- -amin/-mmin/-cmin [符号なし/+/-]分数
前置符号
- 符号なし:その時刻前、たとえば
-atime 3
→ 3日前にアクセス
-
:その時刻以内、たとえば-mtyme -3
→ 変更されたのが3日前以内
- +:その時刻以上経過、たとえば
-ctyme +3
→ 変更されて以降3日以上経過