2009/03/20

[Linux] 建立 locate 的資料庫

本篇的最後一段才是重點,不想看廢話的人可以直接跳到最後一段。

在一次偶然地使用終端機找資料時,發現我的系統裡竟然沒有 locate 指令可用。這讓我非常震驚,因為在我的印象中這就和 bash 一樣是內建的東西。和 find 指令不同的是 locate 可以滿系統地找含有某個字串為名稱的檔案,而且支援萬用字元 (如:*?) 的使用。這個功能在想要找到特定檔案時會非常好用,其速度不是圖型介面的前端程式可比,對於很在意速度和懶得抓滑鼠的人來說是不可或缺的指令。

基本上,我只是 Linux 使用者,和 geeker、programmer 完全沾不上邊。可就算如此,我還是漸漸地喜歡上了在終端機上做些系統操作/調整的事兒,甚至是用 vi/vim 編寫或整理一些純文字資料。
在這種摩門特沒有 locate 怎麼辦?沒關係!首先,咱家有 zypper 可以滿世界地找套件。在利用 zypper 灌 locate 時,它顯示有兩個東西可以安裝:

findutilis-locatekio-locate

前者是主要的程式。後者主要是可以在 KDE 某些支援 url 搜索的程式上使用並呈現結果,尤其會讓 konqueror 表現得像是 Mac OS 的 Finder。
原本我以為灌完之後就能馬上使用它。結果根本就不是!就算打了上百遍的 locate 某某某,就是沒有任何東西跑出來,顯然這當中有些小誤會。我以為灌完後它會「自動」建立資料庫,就如同 beagle 預設會建立資料庫一樣。

解決方式其實很簡單,找男人面對 locate (在終端機下打上 man locate),就會發現它早寫在 locate 的說明文件當中:在終端機下打上 updatedb,更新資料庫就行了,這大約會花個幾分鐘,就看電腦中有多少檔案而定。



Powered by ScribeFire.

沒有留言:

張貼留言

逢廣告文必砍!