基本正規表示式(區分萬用字元)

2021-09-25 16:28:07 字數 3511 閱讀 4383

.:匹配任意單個字元

[root@localhost dev]# grep r…t /etc/passwd

root: x :0:0:root:/root:/bin/bash

operator: x :11:0:operator:/root:/sbin/nologin

ftp: x :14:50:ftp user:/var/ftp:/sbin/nologin

[ ]:指定範圍內的任意單個字元

[root@localhost dev]# grep s[abcd]i /etc/passwd

bin: x :1:1:bin:/bin:/sbin/nologin

daemon: x :2:2:daemon:/sbin:/sbin/nologin

adm: x :3:4:adm:/var/adm:/sbin/nologin

lp: x :4:7:lp:/var/spool/lpd:/sbin/nologin

sync: x :5:0:sync:/sbin:/bin/sync

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

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

[root@localhost dev]# grep s[^1234]i /etc/passwd

bin: x :1:1:bin:/bin:/sbin/nologin

daemon: x :2:2:daemon:/sbin:/sbin/nologin

adm: x :3:4:adm:/var/adm:/sbin/nologin

lp: x :4:7:lp:/var/spool/lpd:/sbin/nologin

sync: x :5:0:sync:/sbin:/bin/sync

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

[:digit:]:數字

​[[:digit:]],[[:lower:]],[[:upper:]]:匹配任意字數/小寫字母/大寫字母

​ *:匹配前面字元任意次數

​ .*:匹配任意長度的任意字元

​ \?:匹配前面的字元0次或者一次

\ +:匹配一次或者多次

​ \ :可以匹配至少m次,至多n次

​ ^:行首錨定

​ $:行尾錨定

[root@localhost dev]# grep ^r…t /etc/passwd

root: x :0:0:root:/root:/bin/bash

[root@localhost dev]# grep bash$ /etc/passwd

root: x :0:0:root:/root:/bin/bash

^$:空行

​ ^ [ [:space:] ]$:空行

​ \ < 、 \ b:詞首錨定

[root@localhost dev]# grep 「」 /etc/passwd

root: x :0:0:root:/root:/bin/bash

operator: x :11:0:operator:/root:/sbin/nologin

1、顯示/etc/passwd中不以/bin/bash結尾的行

[root@localhost dev]# grep [ ^/bin/bash $ ] /etc/passwd

[root@localhost dev]# grep -v /bin/bash $ /etc/passwd

2、找出/etc/passwd中兩位數

[root@localhost dev]# grep -0 "\" /etc/passwd

mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

operator:x:11:0:operator:/root:/sbin/nologin

games:x:12:100:games:/usr/games:/sbin/nologin

gopher:x:13:30:gopher:/var/gopher:/sbin/nologin

ftp:x:14:50:ftp user:/var/ftp:/sbin/nologin

nobody:x:99:99:nobody:/:/sbin/nologin

vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin

saslauth:x:499:76:saslauthd user:/var/empty/saslauth:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:privilege-separated ssh:/var/empty/sshd:/sbin/nologin

[root@localhost dev]# grep -o "\" /etc/passwd

1210

1411

1213

3014

5099

9969

6976

8989

7474

3、找出ifconfig命令中ip位址

[root@localhost dev]# ifconfig eth0 |grep inet |grep  -v inet6 | cut -b 21-35
​ \ (xy\ )\ (zd\ )ab\1:把xy當做第一組,把zd當做第二組,取第一組

[root@localhost dev]# cat file

he loves his lover

he likes his lover

she loves her lover

she likes her liker

[root@localhost dev]# grep l…e.l…e file

he loves his lover

he likes his lover

she loves her lover

she likes her liker

[root@localhost dev]# grep "(l…e).\1" file

he loves his lover

she loves her lover

she likes her liker

萬用字元 正規表示式

萬用字元 萬用字元是系統級別的 而正規表示式需要相關 工具和語 言的 支援 egrep,awk,vi,perl。當您鍵入 ls txt 命令並按 enter 後,尋找哪些檔案同 txt 模式相匹配的任務不是由 ls 命令,而是由 shell 自己完成。這需要對命令列是如何被 shell 解析的作進一...

萬用字元 正規表示式

萬用字元 萬用字元是系統級別的 而正規表示式需要相關 工具和語 言的 支援 egrep,awk,vi,perl.當您鍵入ls.txt命令並按enter後,尋找哪些檔案同.txt模式相匹配的任務不是由ls命令,而是由shell自己完成.這需要對命令列是如何被shell解析的作進一步解釋.當您鍵入 ls...

正規表示式,萬用字元

shell中正規表示式和萬用字元 linux上實際操作是什麼情況,就是什麼情況,理論只是猜測,試驗結果大於一切 萬用字元一般是用於匹配符合條件的檔名 例如 ls fei hai 而正規表示式則一般是用於在檔案中匹配符合條件的字串。萬用字元是完全匹配,而正規表示式則是包含匹配。例如命令find nam...