VineLinuxパフォーマンスアッププロジェクト:0096
■ファイルを高速に検索するコマンド■
Windowsのエクスプローラのように、LinuxでもGUIを用いたファイル検索機能がありますが、検索対象のデータが多い程検索に時間がかかります。そこでGUIを用いずにコマンドを利用して高速にファイルを検索する方法を紹介します。
検索コマンドは何種類かありますが、今回は作成されたデータベースをもとにして高速に検索ができるlocateコマンドを紹介します。
locateコマンドは検索対象の文字列が含まれているファイル名をコマンドの後に指定することによって探し出してくれる機能です。
locate 探したいファイル名
●使用例
[aaa@localhost aaa]$ locate crontab
/etc/anacrontab
/etc/crontab
/etc/crontab~
/usr/share/man/man1/crontab.1.gz
/usr/share/man/man5/anacrontab.5.gz
/usr/share/man/man5/crontab.5.gz
/usr/share/vim/vim63/syntax/crontab.vim
/usr/share/jman/man1/crontab.1.gz
/usr/share/jman/man5/crontab.5.gz
/usr/bin/crontab
通常のコマンド操作のように、"*"や"?"などのワイルドカードを利用することも可能です。しかしここで重要なのはlocateコマンドはデータベースをもとに検索を行っているということです。つまりこのデータベースを定期的に更新していかないと、検索対象からはずれているファイルがたまってしまい、検索機能の役割を果たすことができなくなくなってしまいます。
これを防ぐために、データベースの更新処理を行うコマンドとしてupdatedbコマンドがあります。
updatedb
updatedbコマンドはrootユーザ権限で定期的に実行してくださいね。