Linux中如何使用grep命令搜索文件名-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)Linux中如何使用grep命令搜索文件名,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

創(chuàng)新互聯(lián)建站主打移動(dòng)網(wǎng)站、網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)站改版、網(wǎng)絡(luò)推廣、網(wǎng)站維護(hù)、域名注冊(cè)、等互聯(lián)網(wǎng)信息服務(wù),為各行業(yè)提供服務(wù)。在技術(shù)實(shí)力的保障下,我們?yōu)榭蛻舫兄Z穩(wěn)定,放心的服務(wù),根據(jù)網(wǎng)站的內(nèi)容與功能再?zèng)Q定采用什么樣的設(shè)計(jì)。最后,要實(shí)現(xiàn)符合網(wǎng)站需求的內(nèi)容、功能與設(shè)計(jì),我們還會(huì)規(guī)劃穩(wěn)定安全的技術(shù)方案做保障。

從文件中搜索并顯示文件名
當(dāng)你從不止一個(gè)的文件中搜索時(shí),默認(rèn)它將顯示文件名:



grep "word" 文件名
grep root /etc/*


示例輸出:

/etc/bash.bashrc:       See "man sudo_root" for details.
/etc/crontab:17 *       * * *   root    cd / && run-parts --report /etc/cron.hourly
/etc/crontab:25 6       * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
/etc/crontab:47 6       * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
/etc/crontab:52 6       1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
/etc/group:root:x:0:
grep: /etc/gshadow: Permission denied
/etc/logrotate.conf:    create 0664 root utmp
/etc/logrotate.conf:    create 0660 root utmp


每行開始的第一個(gè)部分是文件名(如:/etc/crontab、/etc/group)。使用 -l 選項(xiàng)可以只顯示文件名:



grep -l "string" filename
grep -l root /etc/*


示例輸出:



/etc/aliases
/etc/arpwatch.conf
grep: /etc/at.deny: Permission denied
/etc/bash.bashrc
/etc/bash_completion
/etc/ca-certificates.conf
/etc/crontab
/etc/group


你也可以逆轉(zhuǎn)輸出;使用 -L 選項(xiàng)來輸出那些不匹配的文件的文件名:



grep -L "word" filenamegrep -L root /etc/*

示例輸出:



/etc/apm
/etc/apparmor
/etc/apparmor.d
/etc/apport
/etc/apt
/etc/avahi
/etc/bash_completion.d
/etc/bindresvport.blacklist
/etc/blkid.conf
/etc/bluetooth
/etc/bogofilter.cf
/etc/bonobo-activation
/etc/brlapi.key

根據(jù)文件內(nèi)容查找文件
輸入以下命令:



grep 'string' *.txt
grep 'main(' *.c
grep '#include<example.h>' *.c
grep 'getChar*' *.c
grep -i 'ultra' *.conf
grep -iR 'ultra' *.conf


其中
-i : 忽略模式(匹配字符串 valid、 VALID、 ValID )和輸入文件(匹配 file.c FILE.c FILE.C)的大小寫。
-R : 遞歸讀取每個(gè)目錄下的所有文件。

高亮匹配到的模式
在搜索大量文件的時(shí)候你可以輕松地高亮模式:



$ grep --color=auto -iR 'getChar();' *.c


為查找到的模式顯示文件名和行號(hào)
你也許需要顯示文件名和行號(hào):



$ grep --color=auto -iRnH 'getChar();' *.c


其中,
-n : 在輸出的每行前面添加以 1 開始的行號(hào)。
-H : 為每個(gè)匹配打印文件名。要搜索多個(gè)文件時(shí)這是默認(rèn)選項(xiàng)。(LCTT 譯注:-h 選項(xiàng)強(qiáng)制隱藏文件名;另外 -l 和 -L 選項(xiàng)用于僅顯示匹配/不匹配的文件名,而 -H 和 -h用于控制在顯示匹配行前顯示/不顯示文件名,注意區(qū)分。)



$grep --color=auto -nH 'DIR' *


輸出樣例:
Linux中如何使用grep命令搜索文件名

你也可以使用 find 命令:



代碼如下:

$ find . -name "*.c" -print | xargs grep "main("

關(guān)于Linux中如何使用grep命令搜索文件名就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

網(wǎng)站標(biāo)題:Linux中如何使用grep命令搜索文件名-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://muchs.cn/article48/djioep.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)網(wǎng)站內(nèi)鏈、App開發(fā)、面包屑導(dǎo)航網(wǎng)站導(dǎo)航、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)