locate,定位的意思,作用是讓使用者可以快速的搜尋系統中是否有指定的文件。
locate 命令特點:
1) "locate"的速度比"find"快,因為它並不是真的查找文件,而是查數據庫。
2) 新建的文件,我們立即用"locate"命令去查找,一般是找不到的,
因為數據庫的更新不是實時的,數據庫的更新時間由系統維護。
3) "locate"命令所搜索的後台數據庫在"/var/lib/mlocate"這個目錄下,
可能有些Linux系統位置不同,具體我們可以用"locate locate"查詢。
4) 我們可以用"updatedb"命令來更新數據庫,這樣就能查詢到剛才新建的文件了。
5) 並不是所有的目錄下的文件都會用"locate"命令搜索到,
"/etc/updatedb.conf"這個配置文件中,配置了一些"locate"命令的一些規則。
/etc/updatedb.conf配置文件解析:
1) PRUNE_BIND_MOUNTS = "yes"
值為"yes"時開啟搜索限制,此時,下邊的配置生效;為"no"時關閉搜索限制。
2) PRUNEFS =
後邊跟搜索時,不搜索的文件系統。
3) PRUNENAMES =
後邊跟搜索時,不搜索的文件類型。
4) PRUNEPATHS =
後邊跟搜索時,不搜索的文件所在的路徑。
1. 命令格式:
locate [選項] 文件名
2. 常用選項:
"locate -c" 查詢指定文件的數目。(c為count的意思)
"locate -e" 只顯示當前存在的文件條目。(e為existing的意思)
"locate -h" 顯示"locate"命令的幫助信息。(h為help的意思)
"locate -i" 查找時忽略大小寫區別。(i為ignore的意思)
"locate -n" 最大顯示條數" 至多顯示"最大顯示條數"條查詢到的內容。
"locate -r" 使用正則運算式做尋找的條件。(r為regexp的意思)
3. 常用范例:
1) 查找etc目錄下所有以sh開頭的文件
<喎?http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwcmUgY2xhc3M9"brush:sql;">
2) 查找etc目錄下所有以sh開頭的文件的數目
3) 查找etc目錄下所有以sh開頭的文件,並最多顯示2條
4) 新建的文件,更新數據庫後就能查詢到了
5) 查找文件時,不區分大小寫
6) 使用正則表達式,查找以akefile結尾的文件,並最多顯示5條
7) 只顯示當前存在的文件條目