主頁 > 知識庫 > 每天一個linux命令之locate 命令

每天一個linux命令之locate 命令

熱門標(biāo)簽:商機地圖標(biāo)注 智能電銷機器人有用嗎 測繪地圖標(biāo)注名稱 德陽400電話申請 怎么在百度地圖標(biāo)注公司的位置 外呼電話系統(tǒng)怎么操作 天津電話外呼系統(tǒng)排名 百度地圖標(biāo)注直線距離 鶴崗400電話申請

locate 讓使用者可以很快速的搜尋檔案系統(tǒng)內(nèi)是否有指定的檔案。其方法是先建立一個包括系統(tǒng)內(nèi)所有檔案名稱及路徑的數(shù)據(jù)庫,之后當(dāng)尋找時就只需查詢這個數(shù)據(jù)庫,而不必實際深入檔案系統(tǒng)之中了。在一般的 distribution 之中,數(shù)據(jù)庫的建立都被放在 crontab 中自動執(zhí)行。

1.命令格式:

Locate [選擇參數(shù)] [樣式]

2.命令功能:

locate命令可以在搜尋數(shù)據(jù)庫時快速找到檔案,數(shù)據(jù)庫由updatedb程序來更新,updatedb是由cron daemon周期性建立的,locate命令在搜尋數(shù)據(jù)庫時比由整個由硬盤資料來搜尋資料來得快,但較差勁的是locate所找到的檔案若是最近才建立或 剛更名的,可能會找不到,在內(nèi)定值中,updatedb每天會跑一次,可以由修改crontab來更新設(shè)定值。(etc/crontab)

locate指定用在搜尋符合條件的檔案,它會去儲存檔案與目錄名稱的數(shù)據(jù)庫內(nèi),尋找合乎范本樣式條件的檔案或目錄錄,可以使用特殊字元(如”*” 或”?”等)來指定范本樣式,如指定范本為kcpa*ner, locate會找出所有起始字串為kcpa且結(jié)尾為ner的檔案或目錄,如名稱為kcpartner若目錄錄名稱為kcpa_ner則會列出該目錄下包括 子目錄在內(nèi)的所有檔案。

locate指令和find找尋檔案的功能類似,但locate是透過update程序?qū)⒂脖P中的所有檔案和目錄資料先建立一個索引數(shù)據(jù)庫,在 執(zhí)行l(wèi)oacte時直接找該索引,查詢速度會較快,索引數(shù)據(jù)庫一般是由操作系統(tǒng)管理,但也可以直接下達(dá)update強迫系統(tǒng)立即修改索引數(shù)據(jù)庫。

3.命令參數(shù):

-e 將排除在尋找的范圍之外。

-1 如果 是 1.則啟動安全模式。在安全模式下,使用者不會看到權(quán)限無法看到 的檔案。這會始速度減慢,因為 locate 必須至實際的檔案系統(tǒng)中取得檔案的 權(quán)限資料。

-f 將特定的檔案系統(tǒng)排除在外,例如我們沒有到理要把 proc 檔案系統(tǒng)中的檔案 放在資料庫中。

-q 安靜模式,不會顯示任何錯誤訊息。

-n 至多顯示 n個輸出。

-r 使用正規(guī)運算式 做尋找的條件。

-o 指定資料庫存的名稱。

-d 指定資料庫的路徑

-h 顯示輔助訊息

-V 顯示程式的版本訊息

4.使用實例:

實例1:查找和pwd相關(guān)的所有文件

命令:

locate pwd

輸出:

peida-VirtualBox ~ # locate pwd
/bin/pwd
/etc/.pwd.lock
/sbin/unix_chkpwd
/usr/bin/pwdx
/usr/include/pwd.h
/usr/lib/python2.7/dist-packages/twisted/python/fakepwd.py
/usr/lib/python2.7/dist-packages/twisted/python/fakepwd.pyc
/usr/lib/python2.7/dist-packages/twisted/python/test/test_fakepwd.py
/usr/lib/python2.7/dist-packages/twisted/python/test/test_fakepwd.pyc
/usr/lib/syslinux/pwd.c32
/usr/share/help/C/empathy/irc-join-pwd.page
/usr/share/help/ca/empathy/irc-join-pwd.page
/usr/share/help/cs/empathy/irc-join-pwd.page
/usr/share/help/de/empathy/irc-join-pwd.page
/usr/share/help/el/empathy/irc-join-pwd.page

實例2: 搜索etc目錄下所有以sh開頭的文件

命令:

locate /etc/sh

輸出:

peida-VirtualBox ~ # locate /etc/sh
/etc/shadow
/etc/shadow-
/etc/shells
peida-VirtualBox ~ #

實例3:搜索etc目錄下,所有以m開頭的文件

命令:

locate /etc/m

輸出:

peida-VirtualBox ~ # locate /etc/m
/etc/magic
/etc/magic.mime
/etc/mailcap
/etc/mailcap.order
/etc/manpath.config
/etc/mate-settings-daemon

-e 將排除在尋找的范圍之外。

-e的含義是如果你剛剛刪除了一個文件,而/var/lib/mlocate/mlocate.db數(shù)據(jù)庫文件還沒有來得及更新。那么在直接使用locate filename后,則剛剛被刪除的文件還是會被列出來,但是如果使用-e,命令會確認(rèn)文件的確在文件系統(tǒng)上才會列出這個文件路徑,所以如果匹配的文件很多,-e選項將會減緩查詢速度。

運行l(wèi)ocate命令時,系統(tǒng)報錯:locate: command not found。查了相關(guān)資料,發(fā)現(xiàn)原因是系統(tǒng)上沒有該執(zhí)行文件,就需要安裝。解決方案如下:

執(zhí)行命令:[root@centos62server ~]# yum install locate //看locate屬于哪個軟件包

以上所述是小編給大家介紹的每天一個linux命令之locate 命令,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

您可能感興趣的文章:
  • 詳解Linux中兩個查找命令locate和find教程
  • Linux locate命令的使用方法

標(biāo)簽:丹東 滁州 百色 武漢 自貢 鎮(zhèn)江 六盤水 優(yōu)質(zhì)小號

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《每天一個linux命令之locate 命令》,本文關(guān)鍵詞  每天,一個,linux,命令,之,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《每天一個linux命令之locate 命令》相關(guān)的同類信息!
  • 本頁收集關(guān)于每天一個linux命令之locate 命令的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章