ファイル検索で利用するfindコマンドの使い方を解説します。ファイル名以外にも、色々な条件をつけて目的のファイルを探すことができます。
目次
書式
find [検索パス] [オプション] [検索式]利用例
基本
( -name )
カレントディレクトリ内 で Kernel.phpというファイル を検索
$ find . -name "Kernel.php"
./app/Http/Kernel.php
./app/Console/Kernel.php大文字小文字区別なし
( -iname )
カレントディレクトリ内 で controllerという文字を含む(大文字小文字区別せず)ファイル を検索
$ find . -iname "*controller*"xargsとの応用
カレントディレクトリ内 の tmp拡張子ファイル を削除
$ find . -name "*.tmp" | xargs rm -f更新日を条件に
( -mtime )
カレントディレクトリ内 で 3時間以内に更新されたファイル を検索
find . -mtime -3h検索階層を指定
( -maxdepth )
カレントディレクトリ内(下位第2階層まで) で 3日以内に更新されたファイル を検索
$ find . -maxdepth 2 -mtime -3ディレクトリのみ
( -type d )
appディレクトリ内(下位階層は対象外) の ディレクトリ のみ表示
$ find app -maxdepth 0 -type dファイルのみ
( -type f )
appディレクトリ内 の ファイル のみ表示
$ find app -type fファイル権限を条件に
( -perm )
カレントディレクトリ内 で 777権限のファイル を検索
$ find . -perm 777ファイル容量を条件に
( -size )
カレントディレクトリ内 で 10MB以上のファイル を検索
$ find . -size +10Mk M G など指定できます。