macOS の locate

  macOS で locate コマンドを使うには、

% sudo launchctl load -w System/Library/LaunchDaemons/com.apple.locate.plist
% sudo /usr/libexec/locate.updated

とすればいいようです。定期的にデータベースをアップデートしなければならないのが不便なところ。が、どうもホームディレクトリは対象に含めてくれないようです。それでは困るので、代替案を探してみました。

 見つけたのが、mdfind コマンド。Spotlight の検索メタデータを使って検索してくれるコマンドだそうです。

% mdfind hogehoge

とすれば、検索してくれるのですが、Spotlight ですので、ファイル名だけではなくファイル内に hogehoge を含むファイルもリストアップしてくれます。これではちょっと困ってしまうので、

% mdfindo hogehoge | grep hogehoge

とすればいいじゃないかと愚考しました。まぁこんなもんでいいのではないかと、.zshrc に以下を追記しておきました。

alias locate='(){mdfind $1 | grep $1}'

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です