Shell 文字處理三劍客之grep

2022-05-26 16:36:11 字數 1833 閱讀 3440

-e,--extended-regexp              模式是擴充套件正規表示式

-i,--ignore-case 忽略大小寫

-n,--line-number 列印行號

-v,--invert-match 列印不匹配的行

-o,--only-matching 只列印匹配的內容

-m,--max-count=num   輸出匹配的結果 num 數

-c,--count 只列印每個檔案匹配的行數

-r,--recursive 遞迴目錄

-w,--word-regexp 模式匹配整個單詞

--include=file_pattern 只檢索匹配的檔案

[root@gitlab grep]# cat a.txt 

12345

54321

[root@gitlab grep]# cat b.txt

12345

678910

12345

[root@gitlab grep]# grep -f a.txt b.txt

12345

12345

[root@gitlab grep]# grep -f b.txt a.txt

12345

[root@gitlab grep]#

[root@gitlab grep]# grep -v -f a.txt b.txt 

678910

[root@gitlab grep]# grep -e -v "^$|^#" /etc/fstab

[root@gitlab grep]# echo 」 this is a test「 | egrep -w -o 'is'

is

-w 匹配到整個單詞 -o 輸出匹配到的單詞

[root@gitlab grep]# seq 1 20 | grep -e -m 5 [0-9]

1011

1213

14

[root@gitlab grep]# seq 1 20 | grep -c -e '[0-9]'

11

# echo "a bc de" |xargs -n1 |grep '^b'

echo "a ab abc abcd abcde" |xargs -n1 |grep -n 'de$'

[root@gitlab grep]# grep -r 'uuid' /etc --include \*

[root@gitlab grep]# grep -r '192.167.1.1' /etc --include *.conf

/etc/ip.conf:192.167.1.1

[root@gitlab shell]# ifconfig |grep -e -w -o "[0-9]\.[0-9]\.[0-9]\.[0-9]"

grep [^#] /data/zabbix/etc/zabbix_server.conf

匹配除了#以外任意的字元

grep ^[^#] /data/zabbix/etc/zabbix_server.conf

過濾出來不是以#開頭的行

文字處理三劍客

文字處理三劍客 劍客一 grep 作用 行 過濾 用法 grep 正規表示式 檔案 路徑 grep e 擴充套件類正規表示式 檔案 路徑 劍客二 sed 用法 sed 選項 位址定位sed命令 檔案 路徑 sed 選項 正規表示式 sed命令 檔案 路徑 sed 選項 位址定位 正規表示式 sed命...

Shell文字處理三劍客之grep

過濾來自乙個檔案或標準輸入匹配模式內容。除了grep外,還有egrep fgrep。egrep是grep的擴充套件,相當於grep e。fgrep相當於grep f,用的少。usage grep option pattern file 支援的正則 描述 e,extended regexp 模式是擴充...

shell文字處理三劍客 grep

global search regular expression and print out the line 全面搜尋研究正規表示式並顯示出來 grep命令是一種強大的文字搜尋工具,根據使用者指定的 模式 對目標文字進行匹配檢查,列印匹配到的行,由正規表示式或者字元及基本文字字元所編寫的過濾條件 ...