findコマンド

Linux入門マニュアルが無料ダウンロードできます。

ダウンロードはこちらをクリック

ファイルを検索する

■-- 文法 --■

find (パス) 検索条件

     例)
       find▲/home/usr/pakira▲-name▲pakira.dat
      「/home/usr/pakira」ディレクトリのなかから「pakira.dat」ファイルを検索する
     ※▲はスペースを表してます。


■ オプション

-atime 指定した時間とファイルが最後にアクセスされた時間を比較する
-mtime 指定した時間とファイルの最終更新日を比較する
-name ファイル名 ファイル名で検索する
-user ユーザー名 ファイルの所有者と指定したユーザ名を比較する
-print 条件に合致したファイル名を表示する
-type ファイルタイプ 指定したファイルタイプと比較する


■ 実行例
■「messages」ファイルを検索する

 $ su -    ←root権限になります
 Password:
 # find / -name messages ←「find」コマンドを実行します
 /var/log/messages    ←「/var/log/」に「messages」ファイルがあります


検索するファイルにもよりますが、
「messages」などのシステムログファイルなどを検索する場合には、
root権限になって検索することをおすすめします。

root権限じゃない状態で「find / -name messages」を実行すると、
下記の様なエラーが多く表示されます。
----------------------------------------------
find: /proc/1/fd: Permission denied
find: /proc/2/fd: Permission denied
find: /proc/3/fd: Permission denied
find: /proc/4/fd: Permission denied
----------------------------------------------
検索自体は中止されませんが、画面が見づらくなりますので注意してください。
ちなみに、上記エラーは、
「このディレクトリにアクセスできる権限がありません。」という意味です。

findコマンドは、今で紹介してきたコマンド違いちょっと複雑ですので、
もう少し詳しく紹介します。パスというのがありますが、これは検索する範囲を指定するものです。
上の例では、「/」を指定しています。これはすべてのディレクトリを検索範囲に指定しています。

しかし、もっと狭い範囲を検索したいというのであれば、
ここに検索したいディレクトリを指定してあげればいいわけです。

たとえば、「/home」ディレクトリ配下の「test」という名前のファイルを
検索したい場合には 「find /home -name test」としてあげれば検索できます。

次に検索条件とありますが、ここで色々な条件を指定することで
複雑なファイル検索をすることができます。
例では、「-name」を指定しています。
これは、ファイル名を指定して検索するという指定をしています。

他には、「-user」があります。
これはファイルの所有者が指定したユーザのファイルを検索結果として表示させます。

「find /home -user pakira」と実行すると、
「/home」ディレクトリ配下のpakiraが所有者しているファイルがすべて表示されます。

ファイルタイプで絞込み検索をしたい場合には、「-type ファイルタイプ」を指定します。
「-type f」でファイルを検索、「-type d」でディレクトリを検索します。

ここの条件は組み合わせることで、更に対象ファイルを絞り込むことができます。
検索エンジンで検索するときと同じで、たくさんのキーワードを指定することで
絞込み検索できます。

「find /home -user pakira -name test -type f」
この実行条件は、「/home」ディレクトリ配下のpakiraが所有者しているファイルで、
名前が「test」のものを表示させなさいという意味になります。

このfindコマンドは、いくつかの条件を組み合わせて使うことで、
強力な機能を発揮します。

■その他のオプション
-atime 指定した時間とファイルが最後にアクセスされた時間を比較する
-mtime 指定した時間とファイルの最終更新日を比較する

関連記事
ディレクトリ内のファイル数を表示する



P.S
findなど、より高度な現場のLinux技術をマスターしたいなら

詳しくはこちらをクリック

P.P.S
Linux入門マニュアルが無料ダウンロードできます。

ダウンロードはこちらをクリック


<<関連記事>>
・pstree
・chsh
・finger
・du
・uname