find
機能
ファイルの検索
起動方法
find dir [options...]
説明
指定されたディレクトリ( dir )の下にあるディレクトリを、再帰的に検索し、
オプションに一致するパターンのファイルを
捜し出すコマンドである。
ディレクトリの下にある、ひとつひとつのファイル・ディレクトリについて、
optionsを左から順番に調べてゆく。
オプション
- -amin [-|+]min
- 分数(min)以前(+)、以後(-)にアクセスされたファイル
- -atime [-|+]day
- 日数(day)以前(+)、以後(-)にアクセスされたファイル
- -cmin [-|+]min
- 分数(min)以前(+)、以後(-)にステータスが変更されたファイル
- -ctime [-|+]day
- 日数(day)以前(+)、以後(-)にステータスが変更されたファイル
- -exec command
- UNIXコマンド(command)の実行
{}の部分に調べているファイルの名前が入る。
最後に\;が必要。
- -group grp
- ファイルのグループがgrpである
- -inum i-node
- iノードの番号がi-nodeであるファイル
- -mmin [-|+]min
- 分数(min)以前(+)、以後(-)に更新されたファイル
- -mtime [-|+]day
- 日数(day)以前(+)、以後(-)に更新されたファイル
- -name NAME
- ファイルの名前がNAMEに一致
NAMEにはメタキャラクタ(*,?,[,])が使用できる。
- -newer file
- fileより新しいファイルに一致
- -perm mode
- ファイルのパーミッションがmodeに一致
例えばrwxr-xr-xのパーミションなら0755となる。
- -print
- 結果の表示
- -prune
- 検索の停止
- -size [-|+]SIZE
- ファイルのサイズがSIZEに一致
単位はブロック(512byte)
-SIZEはそのブロック数より小さいファイル、+SIZEは大きいブロック数を表す。
- -type TYPE
- ファイルのタイプ(TYPE)を調べる
タイプの種類は以下の通り
- b
- ブロック型スペシャルファイル
- c
- キャラクタ型スペシャルファイル
- d
- ディレクトリ
- f
- 普通のファイル
- l
- シンボリック・リンク
- s
- ソケット
- p
- 名前つきパイプ
- -user
- ファイルのユーザーが一致
論理式
optionsの部分は論理式になっている。
これによって複数の条件を組み合わせて指定できる。
- (論理式)
- グループ化
- !論理式
- 論理式の否定
- 論理式1 論理式2
- 論理式1と論理式2の論理積
- 論理式1 -o 論理式2
- 論理式1と論理式2の論理和
使用例
- カレントディレクトリの下にある、C言語のプログラムを探す。
-
% find . -name "*.c" -print
- カレントディレクトリの下にある、coreファイルを全て消す。
- % find . -name core -exec rm {} \;
- カレントディレクトリの下にある、ディレクトリ以外のファイルを探す。
- % find . \! -type d -print
- カレントディレクトリの下にある、test.cより新しいファイルか、または、7日以前に更新されたファイルを探す。
- % find . \( -newer test.c -o -mtime +7 \) -print
Home | Contents
Mail