回答:
find / -name example.filename
locate filename
はるかに速くよりもfind、場合あなたはサービスを見つけ実行している、そしてそれは、一度に存在していたファイル見つかっupdatedb(cronジョブの制御下befor usualy夜)最後に実行します。
あなたはできる実行updatedb手で、それさえも遅いよりも示唆cletus、およびルートが必要です。たくさんの新しいものをインストールした後、私は時々データベースを手動で更新します。find
find /1週間に2回以上、または大きなツリーで作業していることに気付いた場合locateは、サービスを実行する価値がありlocate(1)ます。
sudo periodic weeklyはlocateデータベースを更新します。必要なファイルが含まれている可能性のあるインストールまたはダウンロードの後に実行します。
locate他の人が述べたlocateように、ファイルを見つけるための高速な方法です。このコマンドは、ファイル名とフォルダー名の事前にコンパイルされたインデックスを使用します。ファイルシステムをクロールするのではなく、この名前のデータベースが検索されます。
locate example.filename
大文字と小文字を区別しないようにするには、を追加し-iます。
locate -i eXAmPle.FileName
locateデータベースを更新するが使用するデータベースはlocate最新のものでなければなりません。目的のファイルを含むインストールまたはダウンロードを行った後、locateデータベースを更新する必要があります。
locateデータベースには、最終的にあなたのFreeBSDシステムによって自動的に更新されます。このタスクを含む家事の毎週のセットがあります。これらの雑用は/etc/periodic/weekly/310.locateスクリプトにリストされています。
locateデータベースの早期更新を強制する最も簡単で安全な方法は、今すぐ毎週の雑用を強制することです。
sudo periodic weekly
または、すべての定期的な雑用を強制することもできます。新しいFreeBSDシステムをセットアップした直後にこれを行うことをお勧めします。
sudo periodic daily weekly monthly
他の手段を使用してlocateデータベースを更新すると、安全でないというメッセージが表示され、システムのすべてのファイルの名前がFreeBSDシステムのすべてのユーザーに明らかになる場合があります。periodicルートを使用すると、この問題を回避できます。
ロケートデータベースが最新の場合、次のようにします。
locate example.filename
時々する
find . | grep example.filename
ただし、おそらく非常に非効率的です。