Macでlocateコマンドを使用する方法
普段はMacとWindowsの両刀使い、インフラエンジニアの伊藤です。
Macのファイル検索機能といえばSpotlight検索ですよね!
でも、Spotlight機能だけでは、深い階層にある設定ファイルとかが見つからないんですよね...。
そんなときに使えるのが「locate」コマンドです。ファイルのインデックスデータベースを作成してファイルを高速で検索出来ます。
ファイルのインデックスデータベースを作成・更新する必要がありますが、findコマンドと比較するとかなり早いです。
ちなみにfindコマンドはリアルタイムでファイルを検索して表示するので、そこまで高速ではないです。
ってことでlocateコマンドでファイルを探そう!と思ったら、Macではすぐにlocateコマンドが使えませんでした。。
今回は、Macでlocateコマンドを使う方法です。
Macでlocateする
こんな感じで怒られました。
ま、updatedbコマンドしてないからなって思うとupdatedbコマンドがないと言われ。。。
で、もう一度locateコマンドに描かれているところを読み返します。
WARNING: The locate database (/var/db/locate.database) does not exist. To create the database, run the following command: sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist Please be aware that the database can take some time to generate; once the database has been created, this message will no longer appear.
簡単に訳すと...
注意!locate databaseが存在しません。
データベースを作成するなら、次のコマンドを実施してください。sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist
ってことですね。。updatedbコマンドじゃなかったです。
ということで、言われるがままコマンドを実施してみましょう。
一瞬で終わったので不安になったのでもう一度実行すると...
裏でデータベースを作成しているみたいですね。
Macの容量にも左右されるので一概には言えませんが、5分程度経ったら改めてlocateコマンドを使ってみましょう。
locateコマンドで結果が返ってきました。
rsyncd.confってないのか...この辺はまた記事にしよう。
これでSpotlight機能でも見つけられないようなライブラリファイル等を見つけることができました!