例えば「libjpeg.soを含むファイルをディスク全体から検索したい」ってときは今までfindコマンド使っていた
find / -name "*libjpeg.so*" /usr/lib/x86_64-linux-gnu/libjpeg.so.8 /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib/x86_64-linux-gnu/libjpeg.so.8.0.2
が、当然/を軸にfindしてるので時間がかかる
最近locateコマンドと言う存在を知った。
locate libjpeg.so /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib/x86_64-linux-gnu/libjpeg.so.8 /usr/lib/x86_64-linux-gnu/libjpeg.so.8.0.2
一発で検索できる。しかもコマンドも楽
出ないじゃん
なぜ早いかって言うとLinux側がもっているファイル名データベースの情報をもとに検索しているだけ。これはリアルタイムに更新されているわけではないので、直近にできたばかりのファイルはヒットしない。
そんなときは
updatedb
で更新される。