LINUX

LINUX LOCATE指令

介紹

locate指令用來快速尋找檔案。

locate指令是利用資料庫來搜尋系統的檔案,所以使用前要先執行updatedb指令來更新或建立資料庫:

# 使用預設值,將資料庫存放於/var/lib/mlocate/mlocate.db。
⤍ sudo updatedb

# 將安全設定關閉,從directory開始index,並將資料庫存放於/tmp/myindex
⤍ sudo updatedb -l0 -U directory -o /tmp/myindex

安全設定關閉時,使用者可以搜尋到自己沒有權限的檔案。例如:假設root user在根目錄下建立資料庫並且關閉安全設定,則其他使用者只要執行locate指令時使用root user所建立的資料庫搜尋即可找到任何檔案。

updatedb指令的安全設定預設是開啟的,所以只要把-l0選項拿掉就會開啟安全設定。

語法

locate [options]

常用的options

-d index   Indicate which index to use (For example: /tmp/myindex).

-i         Case-insensitive search.

-r regexp  Search for files matching the given regular expression.

範例

尋找含有myfile關鍵字的檔案:

⤍ locate myfile
/etc/myfile.txt
/home/mt/myfile
/var/www/.myfile

使用-i選項:

⤍ locate -i myfile
/etc/myfile.txt
/etc/MyFile.txt
/home/mt/myfile
/home/mt/Myfile
/var/www/.myfile

如果你的系統沒有locate指令,有可能是因為系統較老舊,則你可以試試看slocate

發佈留言