目次

find

機能

条件を指定することによって、ファイルやディレクトリを検索する。演算子で結ぶことによって複数の判別式を使用できる。

構文

find [検索するディレクトリ] (option)

オプション

条件

-name [file name]指定した文字列を検索
-user [user name]指定したユーザー名のファイルを検索
-atime (+/-)n最後にアクセスしたのがn日前のファイルを検索 (+n:n日以上、-n:n日以下)
-mtime (+/-)n最後にデータが修正されたのがn日前のファイルを検索(+n:n日以上、-n:n日以下)
-mmin (+/-)n最後にデータが修正されたのがn分前のファイルを検索(+n:n分以上、-n:n分以下)
-size n[c/k/b]nのサイズのファイルを検索(c:バイト、k:キロバイト、b:ブロック-1ブロック=512バイト)
-type [type]typeに指定したものだけ検索

-type の[type]

bブロックデバイス
cキャラクタデバイス
dディレクトリ
fファイル
lシンボリックリンク
p名前付きパイプ
sソケット (UNIX ドメインソケット)
DDoor (Solaris のみ)

処理

-print検索結果の標準出力(省略可)
-fprint [filename]検索結果を指定したファイルに書き出す
-exec [command] {} \;検索結果をコマンドに引き渡して実行

コマンド例

■./以下から30日以上前に更新されたpng形式のファイルを検索する

 $ find ./ -name "*.png" -atime +30 

■./以下でユーザーmatuiのファイルを検索し削除する。

 $ find ./ -user matsui -exec rm -rf {} \;

■./以下でファイルサイズが10M以上のものを表示。

 $ find ./ -size +10000k -exec ls -ahl {} \;
 -rwxr--r--  1 matsui  matsui    15M  7 22 14:24 ./TEST/EvtRpt92JP.zip
 -rwxr--r--  1 matsui  matsui   3.3G  7  3 10:09 ./TEST/Fedora-9-i386-DVD.iso
 -rwxr--r--  1 matsui  matsui    15M  5 30  2008 ./TEST/FreePrimo32Setup_JP.exe

■ /var/log以下で1M以上のファイルを検索

 $ find /var/log/ -size +1000k -exec ls -ahl {} \;