findコマンドでファイルを探そう

findコマンドとは

findコマンドとは、ファイルやディレクトリを探すコマンドです。
自分で構築していない環境などでインストールされたアプリやログを探すのに便利です。

findコマンドの使い方

findコマンドは、以下のように記載します。

$ find [検索する場所] [オプション] [検索したいファイル名(ディレクトリ名)]

実際に使う場合は、こんな感じ。
特に初見のアプリとかで使うと便利、ちゃんとログの場所まで説明してくれなかったりするので。
※経験を積んだエンジニアには、設定ファイル、ログの場所とかはあまり説明が無い場合も多い。

$ find ./app/conf -type f -name '*.properties' → アプリのプロパティファイルを検索

$ find ./app/log -type f -mmin -5 → 5分以内に更新されたアプリのログを検索

組み合わせて使うことも可能
$ find ./app/conf -type f -name '*.properties' -mtime -7 
              → 7日以内に更新されたアプリのConfファイルを検索

findコマンドのオプション

よく使うオプションは以下の通り
全部見たい場合は、man findコマンドで確認しましょう

オプション説明
-name
-path
ワイルドカードを使用して、ファイル名、ディレクトリの一部を指定して検索
-pathの方が高機能(dir1/dir2のようにスラッシュを入れて検索可能)
-path ‘*conf/*.properties’ でどこかのconfディレクトリ以下のプロパティファイルを検索
-type検索対象を指定する
-type f でファイルのみを検索
-type dでディレクトリのみを検索
-mmin分単位で更新されたファイルやディレクトリを検索
-mmin -5 で5分以内に更新されたファイルを検索
-mtime指定した日に更新したファイルやディレクトリを検索
-mtime -7 → 7日以内に更新されたものを検索
-mtime 0 → 今日更新されたものを検索