回答:
find実際のシステムで検索します。遅くなりますが、常に最新であり、より多くのオプション(サイズ、変更時間など)があります
locate以前に構築されたデータベースを使用します(コマンドupdatedb)。はるかに高速ですが、「古い」データベースを使用し、名前またはその一部のみを検索します。
いずれにせよ、man find及びman locate更なるお手伝いをします。
updatedb大体同じよういろいろ書いありませんfind / -type f | gzip > locate.gz。
どちらlocateとfindコマンドファイルを見つけることが、彼らは非常に異なる方法で動作します。
locate オフラインモードで動作します。
locate、そのデータベースを使用して特定のファイルを検索します。問題は、locateあなたがちょうどあなたが今検索したいファイル、作成した場合である見つけるためではないでしょう仕事をslocateをデータベースが最新ではありませんが。この問題を解決updatedbするには、slocateデータベースの更新に使用できます。locate再度実行すると、新しく作成されたファイルが見つかります。したがって、多くのLinuxシステム管理者は、cronジョブを使用してslocateデータベースを定期的に更新します。find オンライン/「リアルタイム」モードで動作します。
そのため、性質に基づいて、locateはfindよりも高速ですが、findはリアルタイムです。
これがアイデアのクリアに役立つことを願っています。ではごきげんよう。:)
findを使用する代わりに、locateコマンドを使用できます。多くの場合、このコマンドはより高速で、ファイルシステム全体を簡単に検索できます。apt-getを使用してコマンドをインストールできます。
sudo apt-get update
sudo apt-get install mlocate
LocateがFindよりも高速な理由は、ファイルシステム上のファイルのデータベースに依存しているためです。データベースは通常、cronスクリプトを使用して1日に1回更新されますが、次のように入力して手動で更新できます。
sudo updatedb
今すぐこのコマンドを実行してください。最近取得または作成されたファイルを検索する場合、データベースは常に最新でなければなりません。