Linux查找命令詳解

Linux下主要有以下五個查找命令:

find

locate

grep

which

whereis

find

find命令在某個目錄下查找。

一般使用格式:

find <-option>

-pathname:所要查找的目錄及其所有子目錄(默認(rèn)遞歸查找)。默認(rèn)為當(dāng)前目錄哮兰。

-option:指定參數(shù)右遭。

-filetype:想要查找的文件類型图筹。

-action:對查找結(jié)果進(jìn)行的處理哨鸭。

常用參數(shù)

-name: 按照文件名查找文件。

-size n:[c] 查找文件長度為n塊的文件志群,帶有c時表示文件長度以字節(jié)計桑涎。

-depth:在查找文件時等曼,首先查找當(dāng)前目錄中的文件废封,然后再在其子目錄中查找渴肉。

-ctime n:查找系統(tǒng)中最后n*24小時被改變文件狀態(tài)的文件乌奇。

-atime n:查找系統(tǒng)中最后n*24小時訪問的文件

-type: 查找某一類型的文件,如:

-b : 塊設(shè)備文件疏叨。

-c : 字符設(shè)備文件蚤蔓。

-d : 目錄涮坐。

-f : 普通文件。

-l : 符號鏈接文件捷雕。

-p : 管道文件。

例子:

find . -name a* -ls

功能

在當(dāng)前目錄中查找所有以a開頭的文件浦译,并顯示它們的詳細(xì)信息叹俏。

輸出

slot@slot-ubt:~/test$ find . -name a* -ls ? 397656 ? ? ?4 -rw-rw-r-- ? 2 slot ? ? slot ? ? ? ? ? 13 12月 ?3 16:21 ./aa

locate

locate命令在系統(tǒng)的全局范圍內(nèi)查找愕掏。

一般使用格式:

locate <-option>

-option:指定參數(shù)。

-filetype:想要查找的文件類型柠偶。

常用參數(shù):

-d:指定要查找的數(shù)據(jù)庫路徑

-h: 顯示輔助訊息

-i:忽略大小寫

-q:安靜模式睬关,不會顯示任何錯誤訊息诱担。

-n:至多顯示 n個輸出。

-r: 使用正規(guī)運(yùn)算式 做尋找的條件电爹。

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

-V: 顯示程式的版本訊息

例子:

slot@slot-ubt:~/test$ locate hello.txt

/usr/share/doc/syslinux-common/asciidoc/hello.txt

注意:

locate是從數(shù)據(jù)庫中讀取數(shù)據(jù),而不是從文件系統(tǒng)中讀取丐箩。從數(shù)據(jù)庫中讀取時是讀取updatedb命令返回的結(jié)果:

而updatedb命令默認(rèn)是一天(24小時)才自動運(yùn)行一次摇邦,這就意味著如果是最新創(chuàng)建的文件恤煞,使用locate命令可能查找不到。

解決方法:

在使用locate命令前涎嚼,先手動運(yùn)行updatedb命令(需要root權(quán)限):

sudo updatedb

例子:

首先新建一個名為haha.ha的文件阱州,然后用locate命令查找該文件,發(fā)現(xiàn)查找不到結(jié)果:

slot@slot-ubt:~/test$ touch haha.ha

slot@slot-ubt:~/test$

slot@slot-ubt:~/test$ locate haha.ha

slot@slot-ubt:~/test$

使用updatedb命令更新后再查找法梯,可以找到:

slot@slot-ubt:~/test$ sudo updatedb

[sudo] password for slot:

slot@slot-ubt:~/test$

slot@slot-ubt:~/test$ locate haha.ha

/home/slot/test/haha.ha

slot@slot-ubt:~/test$

grep

和find及l(fā)ocate命令不同的是,grep命令是在指定文件中搜索特定的內(nèi)容犀概,然后將包含有這些匹配內(nèi)容的行輸出到標(biāo)準(zhǔn)輸出立哑。如果不指定文件名,則從標(biāo)準(zhǔn)輸入讀取內(nèi)容姻灶。grep命令經(jīng)常和find等命令結(jié)合使用铛绰,其中g(shù)rep常充當(dāng)“過濾器”的角色。

常用參數(shù):

-c: 只輸出匹配行的行數(shù)产喉。

-h: 查詢多文件時不顯示文件名捂掰。

-I: 不區(qū)分大小寫(只適用于單字符)。

-n: 顯示匹配的行和行號曾沈。

-s: 不顯示 不存在或無匹配文本 的錯誤信息这嚣。

-v: 反向匹配,即顯示不包含匹配文本的所有行塞俱。

-R: 遞歸查詢姐帚,即連同子目錄中的文件一起查詢。

例子:在目錄~/test下遞歸查找包含字符串"hello"的所有文件障涯,并顯示匹配行的行號

slot@slot-ubt:~/test$ grep -Rn "hello" ~/test /home/slot/test/aa:1:hello world!/home/slot/test/cc:1:hello world!/home/slot/test/bb:1:hello world!

注意罐旗,這里文件bb是文件aa的符號鏈接:

slot@slot-ubt:~/test$ ls -l

total 8-rw-rw-r-- 2 slot slot 13 12月 ?3 16:21 aa

lrwxrwxrwx 1 slot slot ?2 12月 ?3 16:04 bb -> aa

-rw-rw-r-- 2 slot slot 13 12月 ?3 16:21 cc

如果用-r參數(shù)則不顯示符號鏈接:

slot@slot-ubt:~/test$ grep -rn "hello" ~/test/home/slot/test/aa:1:hello world!/home/slot/test/cc:1:helloworld!

which

which命令將在PATH變量指定的路徑中 查找某個系統(tǒng)命令的位置,并且返回第一個搜索結(jié)果唯蝶。也就是說九秀,使用which命令,就可以看到某個系統(tǒng)命令是否存在粘我,以及執(zhí)行的到底是哪一個位置的命令鼓蜒。

例如,查看當(dāng)前環(huán)境下使用的是哪個bash:

slot@slot-ubt:~/test$ which bash

/bin/bash

whereis

whereis命令用來定位二進(jìn)制文件(參數(shù)-b)涂滴、源代碼文件(參數(shù)-s)和幫助手冊文件(即man文件友酱,參數(shù)-m)。如果省略參數(shù)柔纵,則返回所有信息缔杉。

例子:

slot@slot-ubt:~/test$ whereis bash

bash: /bin/bash /etc/bash.bashrc /usr/share/man/man1/bash.1.gz

slot@slot-ubt:~/test$

slot@slot-ubt:~/test$ whereis -b bash

bash: /bin/bash /etc/bash.bashrc

slot@slot-ubt:~/test$

slot@slot-ubt:~/test$ whereis -s bash

bash:

slot@slot-ubt:~/test$

slot@slot-ubt:~/test$ whereis -m bash

bash: /usr/share/man/man1/bash.1.gz

slot@slot-ubt:~/test$

更多嵌入式專業(yè)知識可訪問:http://www.embedu.org/Column/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市搁料,隨后出現(xiàn)的幾起案子或详,更是在濱河造成了極大的恐慌系羞,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件霸琴,死亡現(xiàn)場離奇詭異椒振,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)梧乘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進(jìn)店門澎迎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人选调,你說我怎么就攤上這事夹供。” “怎么了仁堪?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵哮洽,是天一觀的道長。 經(jīng)常有香客問我弦聂,道長鸟辅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任莺葫,我火速辦了婚禮匪凉,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘徙融。我一直安慰自己洒缀,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布欺冀。 她就那樣靜靜地躺著树绩,像睡著了一般。 火紅的嫁衣襯著肌膚如雪隐轩。 梳的紋絲不亂的頭發(fā)上饺饭,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天,我揣著相機(jī)與錄音职车,去河邊找鬼瘫俊。 笑死,一個胖子當(dāng)著我的面吹牛悴灵,可吹牛的內(nèi)容都是我干的扛芽。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼积瞒,長吁一口氣:“原來是場噩夢啊……” “哼川尖!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起茫孔,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤叮喳,失蹤者是張志新(化名)和其女友劉穎被芳,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體馍悟,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡畔濒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了锣咒。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片侵状。...
    茶點(diǎn)故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖毅整,靈堂內(nèi)的尸體忽然破棺而出壹将,到底是詐尸還是另有隱情,我是刑警寧澤毛嫉,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站妇菱,受9級特大地震影響承粤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜闯团,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一辛臊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧房交,春花似錦彻舰、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至白群,卻和暖如春尚胞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背帜慢。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工笼裳, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人粱玲。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓躬柬,卻偏偏與公主長得像,于是被迫代替她去往敵國和親抽减。 傳聞我的和親對象是個殘疾皇子允青,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內(nèi)容