Linux 系統之擴充套件表示式 egrep

2021-09-20 19:35:53 字數 3983 閱讀 3410

擴充套件的正規表示式:

擴充套件正規表示式,顧名思義是對正規表示式的乙個擴充套件,其接受所有的正規表示式,並對grep進行了擴充。如:支援或者表示式  a|b

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

字元匹配:

. : 匹配任意單個字元

: 匹配指定範圍內的任意單個字元

[^] : 匹配指定範圍外的任意單個字元

次數匹配:

* : 任意次

? :0或1次,表示其左側字元可有可無

+: 至少1次

:精確匹配m次;

:至少m次,至多次;

:至少m次;

:至多次;

位置錨定:

^ : 錨定行首

$ : 錨定行尾

\<, \b : 詞首錨定

\>, \b : 詞尾錨定

分組:()

引用:\1, \2, ...

或者:

a|b:a或者b (或者兩側的所有內容)

命令:grep -e  = egrep例:1

2

3

4

5

6

7

8

建立grep.txt

abc

abbbc

ababc

c

abab

ac

dbabc

a?c 匹配0或1次

1

2

3

4

5

6

7

[root@1inux tmp]# egrep --color=auto "a?c" grep.txt

abc

abbbc

ababc

c

ac

dbabc

+: 至少1次

1

2

3

4

5

[root@1inux tmp]# egrep"b+c"grep.txt

abc

abbbc

ababc

dbabc

:精確匹配m次

1

2

[root@1inux tmp]# egrep "bc" grep.txt

abbbc

^: 行首錨定:

1

2

[root@1inux tmp]# egrep "^c" grep.txt

c

$:錨定行尾

1

2

[root@1inux tmp]# egrep "shutdown$" /etc/passwd

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

顯示當前系統上root、fedora或user1使用者的預設shell;

1

2

3

4

[root@1inuxtmp]# egrep "^(root|fedora|user1)" /etc/passwd | cut -d: -f7

/bin/bash

/bin/bash

/bin/bash

顯示/boot/grub/grub.conf中以至少乙個空白字元開頭的行;

1

2

3

4

[root@1inux tmp]# egrep"^[[:space:]]+"/boot/grub/grub.conf

root (hd0,0)

no_luksrd_no_dmlang=en_us.utf-8 rd_lvm_lv=vg0/swap rd_no_mdsysfont=latarcyrheb-sun16 crashkernel=auto rd_lvm_lv=vg0/rootkeyboardtype=pckeytable=us rhgb crashkernel=auto quiet rhgb quiet

initrd /initramfs-2.6.32-504.el6.x86_64.img

Linux系統之正規表示式

正規表示式 概述 正規表示式是由一系列字元和元字元構成的字串,簡稱re regular expression 主要功能書文字查詢和字串操作,他可以匹配文字的乙個字元或字元集合。正規表示式完成了資料的過濾,將不符合正則表達是的資料拒絕,留下符合的 字元匹配 匹配任意單個字元 匹配指定範圍內任意單個字元...

擴充套件正規表示式

事實上,一般實驗者只需要熟悉基礎的正規表示式就足夠了。不過有時候為了簡化命令操作,了解一些使用範圍更廣的擴充套件表示式,會更加方便。正規表示法 grep v regular express.txt grep v 需要使用到管線命令來搜尋兩次!那麼如果使用延伸型的正規表示法,我們可以簡化為 egrep...

擴充套件正規表示式

使用egrep或者grep e 一般都是使用egrp 語法 擴充套件正規表示式 re字元 意義與範例 重複乙個或者乙個以上的前乙個字元 egrep n go d regular express.txt 零個或者乙個前乙個字元 egrep n go?d regular express.txt or的意...