ファイルやディレクトリには,名前のほかに,所有しているユーザー,アクセス権限,ファイル・サイズ,タイムスタンプなどの情報が付加されています。findコマンドではこれらの情報を用いてファイル検索が行えます。
ファイル・サイズで検索する
ファイルのサイズで検索を行う場合は判別式に「-size」を使います。指定する数字の後に「c」を付けるとバイト,「k」を付けるとKバイト単位での指定ができます。例えば,1Kバイトのファイルを探す場合は,次のように実行します。
|
また,指定する数字の前に「+」を付けると指定したサイズ以上のファイル,「-」を付けると指定したサイズ以下のファイルが検索対象になります。例えば,10Kバイト以上のファイルを検索する場合は,
|
と実行します。さらに,容量の範囲を指定することも可能です。例えば,10Kバイト以上100Kバイト以下のファイルを探す場合は,次のように実行します。
|
パーミッションから検索を行う
パーミッションを指定して検索する場合は,判別式に「-perm」を使います。例えば,パーミッションが「rwxr-xr-x」(755)のファイルを探すには,次のように実行します。
|
特定のパーミッションを条件にして検索することも可能です。指定したパーミッションを含むファイルを探すには,パーミッションの前に「-」を付けます。例えば,ユーザー,グループ,その他のユーザーのすべてが読み込み可能なファイルを探すには,
|
と実行します。また,指定したパーミッションのいずれかを持つファイルを探すには,パーミッションの前に「+」を付けます。例えば,ユーザー,グループ,その他のユーザーのいずれかに実行権限が付いているファイルを探すには,
|
と実行します。
タイムスタンプから検索を行う
ファイルのタイムスタンプから検索を行うには,表1のような判別式を使います。
表1●タイムスタンプから検索するときに使える判別式 |
例えば,最後にアクセスした時間が2時間前のファイルを探すには,次を実行します。
|
時間の範囲を指定することもできます。指定した数字の前に「+」を付けると指定した以前にアクセスしたファイルを,「-」を付けると指定した以後にアクセスしたファイルを,検索します。例えば,10日前から20日前までに変更されたファイルを探すには,次のように実行します。
|