日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
詳解grep命令的排除功能

grep命令是linux中一種強(qiáng)大的文本搜索工具,它能使用正則表達(dá)式搜索文本,并把匹配的行打印出來(lái)。 在一個(gè)或多個(gè)文件中搜素字符串模式,如果字符串模式包括空格,也必須被引用,模式后的所有字符串被看作文件名。搜索的結(jié)果被送到標(biāo)準(zhǔn)輸出(stdout),不影響原文件內(nèi)容。

成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司是一家服務(wù)多年做網(wǎng)站建設(shè)策劃設(shè)計(jì)制作的公司,為廣大用戶提供了網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì),成都網(wǎng)站設(shè)計(jì),廣告投放,成都做網(wǎng)站選成都創(chuàng)新互聯(lián)公司,貼合企業(yè)需求,高性價(jià)比,滿足客戶不同層次的需求一站式服務(wù)歡迎致電。

排除單詞或多個(gè)條件

要僅顯示與搜索模式不匹配的行,請(qǐng)使用-v選項(xiàng)。例如,顯示不包含nologin的行,使用下面命令:

[root@localhost ~]# grep -wv nologin /etc/passwd
root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
bob:x:1000:1000::/home/bob:/bin/bash
user01:x:1001:1001::/home/user01:/bin/bash
postgres:x:26:26:PostgreSQL Server:/var/lib/pgsql:/bin/bash

-w選項(xiàng)告訴 grep 僅返回-w選項(xiàng)后面包含單詞的行。

默認(rèn)情況下grep 區(qū)分大小寫(xiě)。這意味著大寫(xiě)和小寫(xiě)字符被視為不同的。若要在搜索時(shí)忽略大小寫(xiě),請(qǐng)使用-i 選項(xiàng)調(diào)用 grep。

如果搜索字符串中包含空格,則需要將內(nèi)容放在單引號(hào)或者雙引號(hào)內(nèi)。

若要排除兩個(gè)或多個(gè)搜索條件,請(qǐng)使用-e選項(xiàng),可根據(jù)需要多次使用-e選項(xiàng):

[root@localhost ~]# grep -wv -e nologin -e bash /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt

排除多個(gè)搜索條件的另一個(gè)方式是使用運(yùn)算符 |,以下示例打印不包含字符串nologinbash的行:

[root@localhost ~]# grep -wv 'nologin\|bash' /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt

還可以使用擴(kuò)展正則表達(dá)式,使用選項(xiàng) -E會(huì)后,運(yùn)算符|就不需要被轉(zhuǎn)義了,如下圖:

[root@localhost ~]# grep -Ewv 'nologin|bash' /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt

下面一個(gè)實(shí)例,是排除/etc/ssh/sshd_config配置文件中的以#和 空格 開(kāi)頭的行:

[root@localhost ~]# cat /etc/ssh/sshd_config |grep -Ev '(^#|^$)'

下面的實(shí)例,要打印出系統(tǒng)上所有正在運(yùn)行的進(jìn)程,除了以“root”用戶身份運(yùn)行的進(jìn)程:

[root@localhost ~]# ps -ef|grep -wv root

排除目錄或文件

要從grep搜索中排除目錄,請(qǐng)使用--exclude-dir選項(xiàng)。排除目錄的路徑是相對(duì)于后面指定的搜索目錄。

下面實(shí)例,顯示如何在/etc目錄中的所有文件中搜索單詞keys,不包括 /etc/pki 目錄:

[root@localhost ~]# grep -Rw --exclude-dir=pki keys /etc/

要排除多個(gè)目錄,請(qǐng)將排除的目錄括在大括號(hào)中,并使用逗號(hào)分隔,不要有空格。

例如,要在系統(tǒng)中查找包含字符串 gnu 的文件,不包括 proc、boot 和 sys 目錄,需要運(yùn)行下面命令:

[root@localhost ~]# grep -r --exclude-dir={proc,boot,sys} gnu /

下面實(shí)例,使用--exclude選項(xiàng)排除多個(gè)文件,我們?cè)诋?dāng)前工作目錄中搜索字符串 linuxprobe,不包括以 .png 和 .jpg 結(jié)尾的文件:

[root@localhost ~]# grep -rl --exclude=*.{png,jpg} linuxprobe *

總結(jié)

grep 是一種強(qiáng)大的命令行工具,用于在一個(gè)或多個(gè)輸入文件中搜索與正則表達(dá)式匹配的行,并將匹配的行標(biāo)準(zhǔn)輸出。在本文中介紹如何在使用 grep 搜索時(shí)排除一個(gè)或多個(gè)單詞或目錄。


分享題目:詳解grep命令的排除功能
標(biāo)題網(wǎng)址:http://www.5511xx.com/article/copoees.html