Linuxコマンド【 find 】ファイルを検索する

当ページのリンクには広告が含まれています。

スポンサーリンク

findコマンドは、ファイルを検索するコマンドです。

findコマンド

書式

find [パス] [検索条件]

検索条件は、オプション・判別式・アクションからなります。

オプション

-maxdepth レベル 指定したパスから数えて、最大何段階下まで検索するかを指定します。
-mindepth レベル指定したパスから数えて、何段階下まで検索しないかを指定します。
-mountマウントしている他のファイルシステムを検索対象から除外します(検索しません)。

判別式

-amin nファイルの最終アクセス日時がn分前。
-anewer ファイル最終アクセス日時が指定したファイルより新しい。
-atime nファイルの最終アクセス日時がn日前。
-cmin nファイルの最終更新日時がn分前。
-cnewer ファイル最終更新日時が指定したファイルより新しい。
-ctime nファイルの最終更新日時がn日前。
-mmin nファイルの最終修正日時がn分前。
-mnewer ファイル最終修正日時が指定したファイルより新しい。
-mtime nファイルの最終修正日時がn日前。
-executable実行可能なファイル。
-writable書き込みなファイル。
-gid nファイルのグループIDがn。
-group グループファイルのグループが指定したグループ。
-uid nファイルのユーザーIDがn。
-user ユーザーファイルのユーザーが指定したユーザー。
-iname 文字列指定した文字列のファイル(大文字小文字を区別しない)。
-name 文字列指定した文字列のファイルやディレクトリ。
-path パターン指定したパターンにマッチするファイル。
-perm モード指定したモードにマッチするファイル。モードについてはchmodコマンドを参照。
-size サイズ指定したサイズより大きい。
-type ファイルタイプ ファイルタイプを指定。
b ブロックファイル
c キャラクタファイル
d ディレクトリ
f ファイル
l シンボリックリンク
s ソケット

アクション

-deleteファイルを削除。
-exec コマンド指定したコマンドを実行。
-fprint ファイル フルパスのファイル名を指定したファイルに。
-ok コマンド指定したコマンドを実行。実行する前にユーザーに問い合わせを行う。
-printフルパスのファイル名を標準出力に表示。

使用例

指定したファイル名(-name)を指定パス以下(/home/user/)を検索します。

$ find /home/user/ -name .bashrc
/home/user/.bashrc

ホームディレクトリを検索する場合は、変数 $HOME を利用してもOKです。

$ find $HOME -name .bashrc
/home/user/.bashrc

今日(-mtime 0)更新したファイルを検索します。便利!

$ find . -mtime 0
.
./file

ファイルモードが644のファイルを検索します。

$find . -perm 664

関連コマンド

file, fuser

ファイル/ディレクトリ の人気記事

  1. Linuxコマンド【 chown 】ファイルの所有者やグループを変更する
  2. Linuxコマンド【 gzip 】ファイルを圧縮・展開する
  3. Linuxコマンド【 rsync 】高速にファイルを同期・転送する(バックアップ)
  4. ファイルの解凍・圧縮 - Linuxコマンド一覧(.zip .gz .Z .bz2 tar.gz .tgz tar.Z .taz .tar.bz2 .tbz2)
  5. Linuxコマンド【 ls 】ファイルとディレクトリのリストを表示する
  6. Linuxコマンド【 df 】ファイルシステムのディスク容量を表示する
  7. Linuxコマンド【 diff 】2つのファイルの差分を出力する
  8. Linuxコマンド【 du 】ファイルのディスク使用量を表示する
  9. Linuxコマンド【 zip 】ファイルを圧縮する
  10. umask - ファイル作成時のパーミションを表示・変更 - Linuxコマンド

関連記事(一部広告含む)