新聞中心
linux如何查找文件
1、使用find命令
為赤壁等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及赤壁網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、赤壁網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
Linuxfind命令用來在指定目錄下查找文件。任何位于參數(shù)之前的字符串都將被視為欲查找的目錄名。如果使用該命令時(shí),不設(shè)置任何參數(shù),則find命令將在當(dāng)前目錄下查找子目錄或文件。并且將查找到的子目錄和文件全部進(jìn)行顯示。
語法:find path -option [ -print ] [ -exec -ok command ] {} \;
2、使用locate命令
Linux locate命令用于查找符合條件的文檔,他會(huì)去保存文檔和目錄名稱的數(shù)據(jù)庫內(nèi),查找合乎范本樣式條件的文檔或目錄。
一般情況我們只需要輸入locate your_file_name即可查找指定文件。
語法:locate [-d ][--help][--version][范本樣式...]
3、使用which命令
Linux which命令用于查找文件。
which指令會(huì)在環(huán)境變量$PATH設(shè)置的目錄里查找符合條件的文件。
語法:which [文件...]
4、使用whereis命令
Linux whereis命令用于查找文件。
該指令會(huì)在特定目錄中查找符合條件的文件。這些文件應(yīng)屬于原始代碼、二進(jìn)制文件,或是幫助文件。
該指令只能用于查找二進(jìn)制文件、源代碼文件和man手冊(cè)頁,一般文件的定位需使用locate命令。
語法:whereis [-bfmsu][-B 目錄...][-M 目錄...][-S目錄...][文件...]
Linux下Grep命令的詳細(xì)使用方法?
在linux中g(shù)rep命令是非常有用的,它和管道(|)配合使用,非常強(qiáng)大,用于搜索文本文件.如果想要在幾個(gè)文本文件中查找一字符串,可以使用‘grep’命令?!甮rep’在文本中搜索指定的字符串。
假設(shè)您正在‘/usr/src/linux/Documentation’目錄下搜索帶字符串‘magic’的文件:
$ grep magic /usr/src/linux/Documentation/*
sysrq.txt:* How do I enable the magic SysRQ key?
sysrq.txt:* How do I use the magic SysRQ key?
其中文件‘sysrp.txt’包含該字符串,討論的是 SysRQ 的功能。
默認(rèn)情況下,‘grep’只搜索當(dāng)前目錄。如果此目錄下有許多子目錄,‘grep’會(huì)以如下形式列出:
grep: sound: Is a directory
這可能會(huì)使‘grep’的輸出難于閱讀。這里有兩種解決的辦法:
明確要求搜索子目錄:grep -r
或忽略子目錄:grep -d skip
當(dāng)然,如果預(yù)料到有許多輸出,您可以通過 管道 將其轉(zhuǎn)到‘less’上閱讀:
$ grep magic /usr/src/linux/Documentation/* | less
這樣,您就可以更方便地閱讀。
有一點(diǎn)要注意,您必需提供一個(gè)文件過濾方式(搜索全部文件的話用 *)。如果您忘了,‘grep’會(huì)一直等著,直到該程序被中斷。如果您遇到了這樣的情況,按 ,然后再試。
下面是一些有意思的命令行參數(shù):
grep -i pattern files :不區(qū)分大小寫地搜索。默認(rèn)情況區(qū)分大小寫,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整個(gè)單詞,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),
grep -C number pattern files :匹配的上下文分別顯示[number]行,
grep pattern1 | pattern2 files :顯示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :顯示既匹配 pattern1 又匹配 pattern2 的行。
這里還有些用于搜索的特殊符號(hào):
\ 分別標(biāo)注單詞的開始與結(jié)尾。
例如:
grep man * 會(huì)匹配 ‘Batman’、‘manic’、‘man’等,
grep '\grep '\' 只匹配‘man’,而不是‘Batman’或‘manic’等其他的字符串。
'^':指匹配的字符串在行首,
'$':指匹配的字符串在行尾,
如果您不習(xí)慣命令行參數(shù),可以試試圖形界面的‘grep’,如 reXgrep 。這個(gè)軟件提供 AND、OR、NOT 等語法,還有漂亮的按鈕 :-) 。如果您只是需要更清楚的輸出,不妨試試 fungrep 。
Linux下文件搜索、查找、查看命令
1、最強(qiáng)大的搜索命令:find 查找各種文件的命令
2、在文件資料中查找文件:locate
3、搜索命令所在的目錄及別名信息:which
4、搜索命令所在的目錄及幫助文檔路徑:whereis
5、在文件中搜尋字符串匹配的行并輸出:grep
6、分頁顯示一個(gè)文件或任何輸出結(jié)果:more
7、分頁顯示一個(gè)文件并且可以回頭:less
8、指定顯示前多少行文件內(nèi)容:head
9、指定顯示文件后多少行內(nèi)容:tail
10、查看一個(gè)文件:cat
11、查看文件內(nèi)容多少字符多少行多少字節(jié):wc
12、排序文件內(nèi)容:sort
一、根據(jù) 文件或目錄名稱 搜索
find 【搜索目錄】【-name或者-iname】【搜索字符】:-name和-iname的區(qū)別一個(gè)區(qū)分大小寫,一個(gè)不區(qū)分大小寫
eg:在/etc 目錄下搜索名字為init的文件或目錄
①、find /etc -name init (精準(zhǔn)搜索,名字必須為 init 才能搜索的到)
②、find /etc -iname init (精準(zhǔn)搜索,名字必須為 init或者有字母大寫也能搜索的到)
③、find /etc -name *init (模糊搜索,以 init 結(jié)尾的文件或目錄名)
④、find /etc -name init??? (模糊搜索,? 表示單個(gè)字符,即搜索到 init___)
二、根據(jù) 文件大小 搜索
eg:在根目錄下查找大于 100M 的文件
find / -size +204800
這里 +n 表示大于,-n 表示小于,n 表示等于
1 數(shù)據(jù)塊 == 512 字節(jié) 0.5KB,也就是1KB等于2數(shù)據(jù)塊
100MB == 102400KB204800數(shù)據(jù)塊
三、根據(jù) 所有者和所屬組 搜索
①、在home目錄下查詢所屬組為 root 的文件
find /home -group root
②、在home目錄下查詢所有者為 root 的文件
find /home -user root
四、根據(jù) 時(shí)間屬性 搜索
find 【路徑】【選項(xiàng)】【時(shí)間】
選項(xiàng)有下面三種:-amin 訪問時(shí)間
-cmin 文件屬性被更改
-mmin 文件內(nèi)容被修改
時(shí)間:+n,-n,n分別表示超過n分鐘,n分鐘以內(nèi)和n分鐘
eg:在 /etc 目錄下查找5 分鐘內(nèi)被修改過屬性的文件和目錄
find /etc -cmin -5
五、根據(jù) 文件類型或i節(jié)點(diǎn) 搜索
-type 根據(jù)文件類型查找:
f表示文件,d表示目錄,l表示軟鏈接
eg:查找 /home 目錄下文件類型是目錄的
find /home -type d
-inum 根據(jù)i節(jié)點(diǎn)查找
eg:查找 /tmp 目錄下i節(jié)點(diǎn)為400342的文件或目錄
find /tmp -inum 400342
六、組合條件 搜索
這里有兩個(gè)參數(shù):
①、-a 表示兩個(gè)條件同時(shí)滿足(and)
②、-o 表示兩個(gè)條件滿足任意一個(gè)即可(or)
范例:查找/etc目錄下大于80MB同時(shí)小于100MB的文件
find /etc -size +163840 -a -size -204800
語法:locate【文件名】 -i 不區(qū)分大小寫
注意:這里和 find 命令是有區(qū)別的,find是全盤檢索,而locate 是在文件資料庫中進(jìn)行搜索。所以locate命令的執(zhí)行要比find命令執(zhí)行速度快很多。但是這里有個(gè)問題,文件資料庫是需要不斷更新的。我們新創(chuàng)建的文件如果不更新 文件資料庫,使用 locate 是查找不到的。
updatedb 手動(dòng)更新資料庫,但是對(duì)于/tmp目錄下的新建文件,是更新不到文件資料庫的,因?yàn)?tmp目錄不屬于文件資料庫的收錄范圍。
eg:locate hcf
功能描述:搜索命令所在的目錄及別名信息
語法:which【命令】
eg:which ls
功能描述:搜索命令所在的目錄及幫助文檔路徑
語法:whereis【命令】
eg:whereis ls
功能描述:在文件中搜尋字符串匹配的行并輸出
語法:grep -iv 【指定字符串】【文件】
-i 不區(qū)分大小寫
-v 排除指定字符串
eg:查找 /root/install.log 文件中包含 mysql 字符串的行,并輸出
grep mysql /root/install.log
本搜索工具,根據(jù)用戶指定的模式,對(duì)目標(biāo)文件逐行進(jìn)行匹配檢查,打印匹配到的行
grep是在文件中搜索匹配的字符串,是在文件中進(jìn)行內(nèi)容搜索,這個(gè)命令后面用到的比較多
描述:
分頁顯示一個(gè)文件或任何輸出結(jié)果
用于查看純文本文件(較長的)格式
格式:
more[選項(xiàng)] 文件
less 與 more 類似,但使用 less 可以隨意瀏覽文件,而 more 僅能向前移動(dòng),卻不能向后移動(dòng),而且 less 在查看之前不會(huì)加載整個(gè)文件。
head[必要參數(shù)][選擇參數(shù)][文件]
用于顯示指定文件開始多少行內(nèi)容
命令參數(shù):
-n 10 顯示前10行
-n -10 正常輸出但不顯示最后的10行
eg:顯示new.txt的前兩行內(nèi)容
head -n 2 new.txt
head -2 new.txt
tail[必要參數(shù)][選擇參數(shù)][文件]
用于顯示指定文件末尾多少行內(nèi)容
命令參數(shù):
-n 10 顯示后面10行
-f 持續(xù)刷新顯示的內(nèi)容
eg:顯示new.txt的末尾兩行內(nèi)容
tail -n 2 new.txt
tail -2 new.txt
eg:指定從第二行開始顯示
tail -n +2 new.txt
描述:一次顯示整個(gè)文件內(nèi)容
cat 命令 用于查看純文本文件(較短)
cat [選項(xiàng)] [文件]…
描述:wc 命令默認(rèn)情況下會(huì)打印換行符數(shù)、單詞數(shù)和字符數(shù)。
用法:wc [選項(xiàng)] [文件]
用法:sort [選項(xiàng)] [文件]
轉(zhuǎn)自: Linux下文件搜索、查找、查看命令_黃小小的博客-CSDN博客_linux 搜索
文章標(biāo)題:linux找文本命令 linux中在文件中查找文本的命令
標(biāo)題來源:http://www.dlmjj.cn/article/ddeopep.html