成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在 Linux 中使用 Grep 命令的排除功能

系統 Linux
grep 是一種強大的命令行工具,用于在一個或多個輸入文件中搜索與正則表達式匹配的行,并將匹配的行標準輸出。在本文中介紹如何在使用 grep 搜索時排除一個或多個單詞或目錄。

[[410892]]

grep 是一種強大的命令行工具,用于在一個或多個輸入文件中搜索與正則表達式匹配的行,并將匹配的行標準輸出。在本文中介紹如何在使用 grep 搜索時排除一個或多個單詞或目錄。

排除單詞或多個條件

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

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

-w選項告訴 grep 僅返回-w選項后面包含單詞的行。

默認情況下grep 區分大小寫。這意味著大寫和小寫字符被視為不同的。若要在搜索時忽略大小寫,請使用-i 選項調用 grep。

如果搜索字符串中包含空格,則需要將內容放在單引號或者雙引號內。

若要排除兩個或多個搜索條件,請使用-e選項,可根據需要多次使用-e選項:

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

排除多個搜索條件的另一個方式是使用運算符 |,以下示例打印不包含字符串nologin和bash的行:

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

還可以使用擴展正則表達式,使用選項 -E參數后,運算符|就不需要被轉義了,如下圖:

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

下面一個實例,是排除/etc/ssh/sshd_config配置文件中的以#和 空格 開頭的行:

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

下面的實例,要打印出系統上所有正在運行的進程,除了以“root”用戶身份運行的進程:

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

排除目錄或文件

要從grep搜索中排除目錄,請使用--exclude-dir選項。排除目錄的路徑是相對于后面指定的搜索目錄。

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

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

要排除多個目錄,請將排除的目錄括在大括號中,并使用逗號分隔,不要有空格。

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

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

下面實例,使用--exclude選項排除多個文件,我們在當前工作目錄中搜索字符串 linuxprobe,不包括以 .png 和 .jpg 結尾的文件:

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

總 結

grep 是一種強大的命令行工具,用于在一個或多個輸入文件中搜索與正則表達式匹配的行,并將匹配的行標準輸出。在本文中介紹如何在使用 grep 搜索時排除一個或多個單詞或目錄。

本文轉載自微信公眾號「Linux就該這么學」,可以通過以下二維碼關注。轉載本文請聯系Linux就該這么學公眾號。

 

責任編輯:武曉燕 來源: Linux就該這么學
相關推薦

2021-07-20 10:00:28

Linuxgrep命令

2023-09-14 15:05:33

grep正則表達式

2018-05-16 10:32:06

Linux命令find

2018-06-26 09:15:24

Linux命令history

2022-11-18 10:16:26

Linuxwc 命令

2022-10-25 09:07:28

Linuxxargs命令

2021-01-13 09:40:26

Linuxexport命令

2019-09-16 19:00:48

Linux變量

2018-04-28 09:12:42

Linux

2022-05-25 08:41:48

Linuxfd 命令文件

2022-03-30 09:32:32

BashtestLinux

2023-01-31 17:36:22

IPLinux網絡

2023-01-09 10:29:41

mv命令Linux

2021-01-12 07:34:13

NetCore 映射器對象

2022-11-23 08:14:42

bash 腳本test 命令

2022-11-21 12:06:24

fgrep命令Linux

2021-03-29 10:10:15

Linuxgrep

2018-10-09 08:30:55

UbuntuLinuxRAR文件

2018-01-30 17:00:10

Linuxscp命令排除文件

2009-02-24 11:05:07

ibmdwiphonegoogle
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线观看 亚洲 | 日本一区二区三区视频在线 | 日本精品一区二区三区在线观看 | 精品一区二区三区在线视频 | 99视频免费播放 | 亚洲精品一 | 中文字幕亚洲无线 | 久久男人天堂 | 91九色在线观看 | 天天操人人干 | 狠狠涩| 欧美色999| 一级黄色在线 | 欧美成人精品在线观看 | 成人欧美| 精品久久久久久久久久久久久久 | 永久www成人看片 | 99精品欧美一区二区蜜桃免费 | 欧洲成人午夜免费大片 | 久草中文在线观看 | 婷婷久久久久 | 亚洲一区二区三区在线 | 日本高清中文字幕 | 精品1区 | 亚洲一区二区三区在线 | 欧美激情一区二区三级高清视频 | 久久综合九色综合欧美狠狠 | www.亚洲精品 | 日韩中文一区 | 台湾佬久久 | 国产一区二区三区在线看 | 欧美日韩国产一区二区三区 | 欧美精产国品一二三区 | 91视频精选| 一道本一区二区 | 国产精品视频免费播放 | 2021天天干夜夜爽 | 久久久精品亚洲 | 日韩精品一区二区不卡 | 国产精品日韩欧美一区二区三区 | 久久久黑人 |