- 9.1正则介绍_grep上
-
- 9.2grep中
-
- 9.3grep下
-
- 扩展
- 把一个目录下,过滤所有*.PHP文档中含有eval的行
- grep-r--include="*.PHP"'eval'/data/
-
-
-
-
-
- #9.1正则介绍grep上
-
- 
- ```
- [root@aminglinux-01~]#ls
- 1111_heard.txt1.txt1.txt.bak2.txt3.txtaminglinuxbb.txttest
- 1231_sorft.txt1.txt~2342.txt.bak4.txtanaconda-ks.cfg.1biji.txt
- [root@aminglinux-01~]#mkdirgrep
- [root@aminglinux-01~]#cdgrep/
- [root@aminglinux-01grep]#cp/etc/passwd.
- [root@aminglinux-01grep]#ls
- passwd
- [root@aminglinux-01grep]#pwd
- /root/grep
- [root@aminglinux-01grep]#ls
- passwd
-
- [root@aminglinux-01grep]#grep'nologin'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
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- games:x:12:100:games:/usr/games:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- nobody:x:99:99:Nobody:/:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin
- chrony:x:997:995::/var/lib/chrony:/sbin/nologin
- user4:x:1006:1005::/home/aming111:/sbin/nologin
- saslauth:x:996:76:Saslauthduser:/run/saslauthd:/sbin/nologin
- [root@aminglinux-01grep]#whichgrep
- aliasgrep='grep--color=auto'
- /usr/bin/grep
- [root@aminglinux-01grep]#
- ```
- -grep-c查看行数
- ```
- [root@aminglinux-01grep]#grep-c'nologin'passwd
- 19
- [root@aminglinux-01grep]#
- ```
- -grep-n查看行号在最左侧显示
- ```
- [root@aminglinux-01grep]#grep-n'nologin'passwd
- 2:bin:x:1:1:bin:/bin:/sbin/nologin
- 3:daemon:x:2:2:daemon:/sbin:/sbin/nologin
- 4:adm:x:3:4:adm:/var/adm:/sbin/nologin
- 5:lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- 9:mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- 10:operator:x:11:0:operator:/root:/sbin/nologin
- 11:games:x:12:100:games:/usr/games:/sbin/nologin
- 12:ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- 13:nobody:x:99:99:Nobody:/:/sbin/nologin
- 14:systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- 15:systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- 16:dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- 17:polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- 18:tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- 19:postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- 20:sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin
- 21:chrony:x:997:995::/var/lib/chrony:/sbin/nologin
- 26:user4:x:1006:1005::/home/aming111:/sbin/nologin
- 29:saslauth:x:996:76:Saslauthduser:/run/saslauthd:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
- -grep-i不区分大小写,先vimpasswd打开把第一行nologin改成大写NOLOGIN
- ```
- [root@aminglinux-01grep]#vimpasswd
-
- root:x:0:0:root:/root:/bin/bash
- 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
- halt:x:7:0:halt:/sbin:/sbin/halt
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- games:x:12:100:games:/usr/games:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- nobody:x:99:99:Nobody:/:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- --插入--
-
- [root@aminglinux-01grep]#vimpasswd
- ```
- -grep-ni和grep-n的区别,会把第三行忽略,grep-ni就不会区分大小写
- ```
- [root@aminglinux-01grep]#grep-n'nologin'passwd
- 2:bin:x:1:1:bin:/bin:/sbin/nologin
- 4:adm:x:3:4:adm:/var/adm:/sbin/nologin
-
-
-
- [root@aminglinux-01grep]#grep-ni'nologin'passwd
- 2:bin:x:1:1:bin:/bin:/sbin/nologin
- 3:daemon:x:2:2:daemon:/sbin:/sbin/NOLOGIN
- 4:adm:x:3:4:adm:/var/adm:/sbin/nologin
- ```
- -grep-v取反,所有不带nologin的行grep-vni看下
- ```
- [root@aminglinux-01grep]#grep-vni'nologin'passwd
- 1:root:x:0:0:root:/root:/bin/bash
- 6:sync:x:5:0:sync:/sbin:/bin/sync
- 7:shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
- 8:halt:x:7:0:halt:/sbin:/sbin/halt
- 22:aming:x:1000:1005::/home/aming:/bin/bash
- 23:user1:x:1001:1001::/home/user1:/bin/bash
- 24:user2:x:1002:1002::/home/user2:/bin/bash
- 25:user3:x:1004:1005::/home/user3:/bin/bash
- 27:user5:x:1007:1007::/home/user5:/bin/bash
- 28:user6:x:1008:1010::/home/user6:/bin/bash
- [root@aminglinux-01grep]#
- ```
- --r遍历所有的字目录
- ```
- [root@aminglinux-01grep]#grep-r'root'/etc/
- /etc/pki/ca-trust/ca-legacy.conf:#TheupstreamMozilla.orgprojecttestsallchangestotherootCA
- /etc/pki/ca-trust/ca-legacy.conf:#totemporarilykeepcertain(legacy)rootCAcertificatestrusted,/etc/pki/ca-trust/ca-legacy.conf:#ItmaykeeprootCAcertificateastrusted,whichtheupstream
- /etc/pki/ca-trust/extracted/README:rootCAcertificates.
- /etc/pki/ca-trust/extracted/java/README:rootCAcertificates.
- ...
- ```
- -如果不加r,先把etc目录下的root过滤出来放到tmp目录下的grep.log下,再去grep.log下找带passwd的
- ```
- [root@aminglinux-01grep]#grep'root'/etc/
- grep:/etc/:是一个目录
- [root@aminglinux-01grep]#grep'root'/etc/passwd
- root:x:0:0:root:/root:/bin/bash
- operator:x:11:0:operator:/root:/sbin/nologin
- [root@aminglinux-01grep]#
-
- [root@aminglinux-01grep]#grep-r'root'/etc/>/tmp/grep.log
- [root@aminglinux-01grep]#greppasswd/tmp/grep.log
- /etc/passwd:root:x:0:0:root:/root:/bin/bash
- /etc/passwd:operator:x:11:0:operator:/root:/sbin/nologin
- /etc/passwd-:root:x:0:0:root:/root:/bin/bash
- /etc/passwd-:operator:x:11:0:operator:/root:/sbin/nologin
- /etc/postfix/main.cf:#thesystempasswdfileinthechrootjailisjustnotpractical.
- [root@aminglinux-01grep]#
- ```
- --A后面跟数字,表示过滤出符合要求的行以及下面n行
-
- -下面过滤出passwd文件里的带有root的行,以及下面的2行
- ```
- [root@aminglinux-01grep]#grep-nA2'root'passwd
- 1:root:x:0:0:root:/root:/bin/bash
- 2-bin:x:1:1:bin:/bin:/sbin/nologin
- 3-daemon:x:2:2:daemon:/sbin:/sbin/NOLOGIN
- --
- 10:operator:x:11:0:operator:/root:/sbin/nologin
- 11-games:x:12:100:games:/usr/games:/sbin/nologin
- 12-ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- [root@aminglinux-01grep]#
-
- ```
-
- --B后面跟数字,表示过滤出符合要求的行以及上面n行
- -下面过滤出paswd文件里的带有root的行,以及上面的3行
- ```
- [root@aminglinux-01grep]#grep-nB3'root'passwd
- 1:root:x:0:0:root:/root:/bin/bash
- --
- 7-shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
- 8-halt:x:7:0:halt:/sbin:/sbin/halt
- 9-mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- 10:operator:x:11:0:operator:/root:/sbin/nologin
- [root@aminglinux-01grep]#
-
- ```
-
- --C后面跟数字,表示过滤出符合要求的行以及上下n行
- -下面过滤出passwd文件里的带有root的行,以及上下2行
- ```
- [root@aminglinux-01grep]#grep-nC2'root'passwd
- 1:root:x:0:0:root:/root:/bin/bash
- 2-bin:x:1:1:bin:/bin:/sbin/nologin
- 3-daemon:x:2:2:daemon:/sbin:/sbin/NOLOGIN
- --
- 8-halt:x:7:0:halt:/sbin:/sbin/halt
- 9-mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- 10:operator:x:11:0:operator:/root:/sbin/nologin
- 11-games:x:12:100:games:/usr/games:/sbin/nologin
- 12-ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- [root@aminglinux-01grep]#
-
- ```
-
-
-
- #9.2grep中
-
- 
- -grep'[0-9]'passwd过滤出带有数字0-9的
-
- ```
- [root@aminglinux-01grep]#grep'[0-9]'passwd
- root:x:0:0:root:/root:/bin/bash
- 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
- halt:x:7:0:halt:/sbin:/sbin/halt
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- games:x:12:100:games:/usr/games:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- nobody:x:99:99:Nobody:/:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin
- chrony:x:997:995::/var/lib/chrony:/sbin/nologin
- aming:x:1000:1005::/home/aming:/bin/bash
- user1:x:1001:1001::/home/user1:/bin/bash
- user2:x:1002:1002::/home/user2:/bin/bash
- user3:x:1004:1005::/home/user3:/bin/bash
- user4:x:1006:1005::/home/aming111:/sbin/nologin
- user5:x:1007:1007::/home/user5:/bin/bash
- user6:x:1008:1010::/home/user6:/bin/bash
- saslauth:x:996:76:Saslauthduser:/run/saslauthd:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
- -grep-vn'[0-9]'/etc/inittba只要带数字的行都不要
- ```
- [root@aminglinux-01grep]#grep-vn'[0-9]'/etc/inittab
- 1:#inittabisnolongerusedwhenusingsystemd.
- 2:#
- 3:#ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- 4:#
- 5:#Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- 6:#
- 7:#systemduses'targets'insteadofrunlevels.Bydefault,therearetwomaintargets:
- 8:#
- 11:#
- 12:#Toviewcurrentdefaulttarget,run:
- 13:#systemctlget-default
- 14:#
- 15:#Tosetadefaulttarget,run:
- 16:#systemctlset-defaultTARGET.target
- 17:#
- [root@aminglinux-01grep]#
-
- ```
- -[]vim看下是9行有个3,10行有个5
- ```
- 1#inittabisnolongerusedwhenusingsystemd.
- 2#
- 3#ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- 4#
- 5#Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- 6#
- 7#systemduses'targets'insteadofrunlevels.Bydefault,therearetwomaintargets:
- 8#
- 9#multi-user.target:analogoustorunlevel3
- 10#graphical.target:analogoustorunlevel5
- 11#
- 12#Toviewcurrentdefaulttarget,run:
- 13#systemctlget-default
- 14#
- 15#Tosetadefaulttarget,run:
- 16#systemctlset-defaultTARGET.target
- 17#
- ~
- ~
- ~
- :setnu
- ```
- -grep-n'^#'inittab过滤以#开头的行
- ```
- [root@aminglinux-01grep]#grep-n'^#'/etc/inittab
- 1:#inittabisnolongerusedwhenusingsystemd.
- 2:#
- 3:#ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- 4:#
- 5:#Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- 6:#
- 7:#systemduses'targets'insteadofrunlevels.Bydefault,therearetwomaintargets:
- 8:#
- 9:#multi-user.target:analogoustorunlevel3
- 10:#graphical.target:analogoustorunlevel5
- 11:#
- 12:#Toviewcurrentdefaulttarget,run:
- 16:#systemctlset-defaultTARGET.target
- 17:#
-
- ```
- -先拷贝一下这个/etc/inittab文件到当前目录下来,不能直接修改文件/etc/inittab系统配置文件,改错了,会会容易导致系统启动不了,出问题
-
- ```
- [root@aminglinux-01grep]#cp/etc/inittab./
- [root@aminglinux-01grep]#viminittab
-
- 1#inittabisnolongerusedwhenusingsystemd.
- 2#
- 3#ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- 4#
- 5#Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- 6#
- 7#systemduses'targets'insteadofrunlevels.Bydefault,therearetwomaintargets:
- 8#
- 9#multi-user.target:analogoustorunlevel3
- 10#graphical.target:analogoustorunlevel5
- 11ldldldldl
- 12#
- 13#Toviewcurrentdefaulttarget,run:
- 14#systemctlget-default
- 15#
- 16#Tosetadefaulttarget,run:
- 17#systemctlset-defaultTARGET.target
- 18#
- ~
- :setnu
- ```
- -在11行随便加了点东西,再来grep-n'^#'inittab,找出以#开头的行找出来,发现第11行没有了
- ```
- [root@aminglinux-01grep]#grep-n'^#'inittab
- 1:#inittabisnolongerusedwhenusingsystemd.
- 2:#
- 3:#ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- 4:#
- 5:#Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- 6:#
- 7:#systemduses'targets'insteadofrunlevels.Bydefault,therearetwomaintargets:
- 8:#
- 9:#multi-user.target:analogoustorunlevel3
- 10:#graphical.target:analogoustorunlevel5
- 12:#
- 13:#Toviewcurrentdefaulttarget,run:
- 14:#systemctlget-default
- 15:#
- 16:#Tosetadefaulttarget,run:
- 17:#systemctlset-defaultTARGET.target
- 18:#
- [root@aminglinux-01grep]#
- ```
- -grep-nv'^#'inittab把不以#开头的行找出来
- ```
- [root@aminglinux-01grep]#grep-nv'^#'inittab
- 11:ldldldldl
- [root@aminglinux-01grep]#
- ```
- -再进入viminittab里面修改下文件
- ```
- [root@aminglinux-01grep]#viminittab
-
- #inittabisnolongerusedwhenusingsystemd.
- #ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- #
- #Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- #
- #systemduses'targets'insteadofrunlevels.Bydefault,therearetwomaintargets:
- &*&*&*&*
- #multi-user.target:analogoustorunlevel3
- aaaaaaaaaaaaa
- #graphical.target:analogoustorunlevel5
- ldldldldl
- #
- #Toviewcurrentdefaulttarget,run:
- #systemctlget-default
- 11111111111
- #Tosetadefaulttarget,run:
- #systemctlset-defaultTARGET.target
- #
- :wq
-
- [root@aminglinux-01grep]#viminittab
- [root@aminglinux-01grep]#pwd
- /root/grep
- [root@aminglinux-01grep]#
-
- ```
- -再过滤下
- ```
- [root@aminglinux-01grep]#grep-v'^#'inittab
- &*&*&*&*
- aaaaaaaaaaaaa
- ldldldldl
- 11111111111
- [root@aminglinux-01grep]#
- ```
- -grep'[^0-9]'inittab表示过滤出非数字的带有一个字符的地方,在[^0-9]表示选非0-9
- ```
- [root@aminglinux-01grep]#grep'[^0-9]'inittab
- #inittabisnolongerusedwhenusingsystemd.
- #ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- #
- #Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- #
- #systemduses'targets'insteadofrunlevels.Bydefault,run:
- #systemctlget-default
- #Tosetadefaulttarget,run:
- #systemctlset-defaultTARGET.target
- #
- [root@aminglinux-01grep]#
- ```
- -再编辑下inittab文件
- ```
- [root@aminglinux-01grep]#viminittab
-
- #inittabisnolongerusedwhenusingsystemd.
- #ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- 111111111aaa23333333
- #
- #Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- #
- #systemduses'targets'insteadofrunlevels.Bydefault,run:
- #systemctlset-defaultTARGET.target
- ```
- -以非数字的一个字符grep'[^0-9]'inittab
- ```
- [root@aminglinux-01grep]#grep'[^0-9]'inittab
- #inittabisnolongerusedwhenusingsystemd.
- #ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- 111111111aaa23333333
- #
- #Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- #
- #systemduses'targets'insteadofrunlevels.Bydefault,run:
- #systemctlset-defaultTARGET.target
- #
- [root@aminglinux-01grep]#
- ```
- -符合非数字的行开头的行grep'^[^0-9]'inittab
- ```
- [root@aminglinux-01grep]#grep'^[^0-9]'inittab
- #inittabisnolongerusedwhenusingsystemd.
- #ADDINGCONFIGURATIONHEREWILLHAVENOEFFECTONYOURSYSTEM.
- #
- #Ctrl-Alt-Deleteishandledby/usr/lib/systemd/system/ctrl-alt-del.target
- #
- #systemduses'targets'insteadofrunlevels.Bydefault,run:
- #systemctlset-defaultTARGET.target
- #
- ```
- -符合数字开头的grep-vn'^[^0-9]'inittab
- ```
- [root@aminglinux-01grep]#grep-vn'^[^0-9]'inittab
- 3:111111111aaa23333333
- 16:11111111111
- [root@aminglinux-01grep]#
- ```
-
-
-
- #9.3grep下
-
- -grep'r.o'passwd.代表任意一个字符
- ```
- [root@aminglinux-01grep]#grep'r.o'passwd
- root:x:0:0:root:/root:/bin/bash
- operator:x:11:0:operator:/root:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
- 1.随便在passwd文件里编辑一些
- ```
- [root@aminglinux-01grep]#vimpasswd
-
- root:x:0:0:root:/root:/bin/bash
- bin:x:1:1:bin:/bin:/sbin/nologin
- dskdklldkdddkdkrao:222
- daemon:x:2:2:daemon:/sbin:/sbin/NOLOGIN
- 222222:r>o:ldkdkdkd
- ```
- 2.再看下
- ```
- [root@aminglinux-01grep]#grep'r.o'passwd
- root:x:0:0:root:/root:/bin/bash
- dskdklldkdddkdkrao:222
- 222222:r>o:ldkdkdkd
- operator:x:11:0:operator:/root:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
- 4..也可以匹配到
- ```
- [root@aminglinux-01grep]#vimpasswd
- 222222:r.o:ldkdkdkd
-
- [root@aminglinux-01grep]#grep'r.o'passwd
- root:x:0:0:root:/root:/bin/bash
- dskdklldkdddkdkrao:222
- 222222:r.o:ldkdkdkd
- operator:x:11:0:operator:/root:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
-
- -grep'o*o'passwd*表示*左边的字符重复0-n次n表示随意的数字
- ```
- [root@aminglinux-01grep]#grep'o*o'passwd
-
- root:x:0:0:root:/root:/bin/bash
- bin:x:1:1:bin:/bin:/sbin/nologin
- dskdklldkdddkdkrao:222
- daemon:x:2:2:daemon:/sbin:/sbin/NOLOGIN
- 222222:r.o:ldkdkdkd
- adm:x:3:4:adm:/var/adm:/sbin/nologin
- lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- games:x:12:100:games:/usr/games:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- nobody:x:99:99:Nobody:/:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin
- chrony:x:997:995::/var/lib/chrony:/sbin/nologin
- aming:x:1000:1005::/home/aming:/bin/bash
- user1:x:1001:1001::/home/user1:/bin/bash
- user2:x:1002:1002::/home/user2:/bin/bash
- user3:x:1004:1005::/home/user3:/bin/bash
- user4:x:1006:1005::/home/aming111:/sbin/nologin
- user5:x:1007:1007::/home/user5:/bin/bash
- user6:x:1008:1010::/home/user6:/bin/bash
- saslauth:x:996:76:Saslauthduser:/run/saslauthd:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
- -改下文件passwd增加3个o,4个o
- ```
- [root@aminglinux-01grep]#vimpasswd
-
- user5:x:1007:1007::/hoooome/user5:/bin/bash
- user6:x:1008:1010::/hooome/user6:/bin/bash
-
- [root@aminglinux-01grep]#grep'o*o'passwd
- root:x:0:0:root:/root:/bin/bash
- bin:x:1:1:bin:/bin:/sbin/nologin
- dskdklldkdddkdkrao:222
- daemon:x:2:2:daemon:/sbin:/sbin/NOLOGIN
- 222222:r.o:ldkdkdkd
- adm:x:3:4:adm:/var/adm:/sbin/nologin
- lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- games:x:12:100:games:/usr/games:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- nobody:x:99:99:Nobody:/:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin
- chrony:x:997:995::/var/lib/chrony:/sbin/nologin
- aming:x:1000:1005::/home/aming:/bin/bash
- user1:x:1001:1001::/home/user1:/bin/bash
- user2:x:1002:1002::/home/user2:/bin/bash
- user3:x:1004:1005::/home/user3:/bin/bash
- user4:x:1006:1005::/home/aming111:/sbin/nologin
- user5:x:1007:1007::/hoooome/user5:/bin/bash
- user6:x:1008:1010::/hooome/user6:/bin/bash
- saslauth:x:996:76:Saslauthduser:/run/saslauthd:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
-
- -.*表示任意个任意字符所有的都匹配
- ```
- [root@aminglinux-01grep]#grep'.*'passwd
-
- root:x:0:0:root:/root:/bin/bash
- bin:x:1:1:bin:/bin:/sbin/nologin
- dskdklldkdddkdkrao:222
- daemon:x:2:2:daemon:/sbin:/sbin/NOLOGIN
- 222222:r.o:ldkdkdkd
- 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
- halt:x:7:0:halt:/sbin:/sbin/halt
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- games:x:12:100:games:/usr/games:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- nobody:x:99:99:Nobody:/:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin
- chrony:x:997:995::/var/lib/chrony:/sbin/nologin
- aming:x:1000:1005::/home/aming:/bin/bash
- user1:x:1001:1001::/home/user1:/bin/bash
- user2:x:1002:1002::/home/user2:/bin/bash
- user3:x:1004:1005::/home/user3:/bin/bash
- user4:x:1006:1005::/home/aming111:/sbin/nologin
- user5:x:1007:1007::/hoooome/user5:/bin/bash
- user6:x:1008:1010::/hooome/user6:/bin/bash
- saslauth:x:996:76:Saslauthduser:/run/saslauthd:/sbin/nologin
-
-
- [root@aminglinux-01grep]#grep'aming.*bash'passwd
- aming:x:1000:1005::/home/aming:/bin/bash
- [root@aminglinux-01grep]#
- ```
- -grep'o\{2\}'passwd表示匹配o出现俩次的字符o{2}表示前面字符o的重复范围位o重复2次
- ```
- [root@aminglinux-01grep]#grep'o{2}'passwd
- [root@aminglinux-01grep]#grep'o\{2\}'passwd
- root:x:0:0:root:/root:/bin/bash
- lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- user5:x:1007:1007::/hoooome/user5:/bin/bash
- user6:x:1008:1010::/hooome/user6:/bin/bash
- [root@aminglinux-01grep]#
- ```
- -如果觉得过o\{2\}太麻烦可以使用grep-E或者egrep
- ```
- [root@aminglinux-01grep]#grep-E'o{2}'passwd
- root:x:0:0:root:/root:/bin/bash
- lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- user5:x:1007:1007::/hoooome/user5:/bin/bash
- user6:x:1008:1010::/hooome/user6:/bin/bash
-
-
- [root@aminglinux-01grep]#egrep'o{2}'passwd
- root:x:0:0:root:/root:/bin/bash
- lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- user5:x:1007:1007::/hoooome/user5:/bin/bash
- user6:x:1008:1010::/hooome/user6:/bin/bash
- [root@aminglinux-01grep]#
- ```
- -grep-E'(oo){2}'passwd表示一个组合出现2次oo的
- ```
- [root@aminglinux-01grep]#grep-E'(oo){2}'passwd
- user5:x:1007:1007::/hoooome/user5:/bin/bash
- [root@aminglinux-01grep]#
- ```
- -egrep不需要加脱义或者grep-E
- -egrep'o+o'passwd+表示1次或者一次以上出现前面的字符,即+号前面出现一次o或者多次o
- ```
- [root@aminglinux-01grep]#egrep'o+o'passwd
- root:x:0:0:root:/root:/bin/bash
- lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- user5:x:1007:1007::/hoooome/user5:/bin/bash
- user6:x:1008:1010::/hooome/user6:/bin/bash
- [root@aminglinux-01grep]#
- ```
- -egrep'o+b'passwd表示+前面可以出现o一次以上egrep'o+t'passwd
- ```
- [root@aminglinux-01grep]#egrep'o+b'passwd
- nobody:x:99:99:Nobody:/:/sbin/nologin
- [root@aminglinux-01grep]#
-
- [root@aminglinux-01grep]#egrep'o+t'passwd
- root:x:0:0:root:/root:/bin/bash
- operator:x:11:0:operator:/root:/sbin/nologin
- [root@aminglinux-01grep]#
-
- ```
- -egrep'o?t'passwd?表示0次或者1次出现前面的字符这里是0次或者1次出现o
- ```
- [root@aminglinux-01grep]#egrep'o?t'passwd
- root:x:0:0:root:/root:/bin/bash
- shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
- halt:x:7:0:halt:/sbin:/sbin/halt
- operator:x:11:0:operator:/root:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin
- saslauth:x:996:76:Saslauthduser:/run/saslauthd:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
- -egrep'o?1o'passwd这个表示?前面出现0次或者1次o
- -先编辑下文件vimpasswd
- ```
- [root@aminglinux-01grep]#vimpasswd
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:1o1:0:operator:/root:/sbin/nologin
- games:x:12:100:games:/usr/games:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/no1ologin
- [root@aminglinux-01grep]#vimpasswd
-
- [root@aminglinux-01grep]#egrep'o?1o'passwd
- operator:x:1o1:0:operator:/root:/sbin/nologin
- ftp:x:14:50:FTPUser:/var/ftp:/sbin/no1ologin
- [root@aminglinux-01grep]#egrep'o?1o'passwd
- ```
-
-
- -grep-E'root|nologin'passwd|在这里表示或者的意思
- ```
- [root@aminglinux-01grep]#grep-E'root|nologin'passwd
- root:x:0:0:root:/root:/bin/bash
- bin:x:1:1:bin:/bin:/sbin/nologin
- adm:x:3:4:adm:/var/adm:/sbin/nologin
- lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:1o1:0:operator:/root:/sbin/nologin
- games:x:12:100:games:/usr/games:/sbin/nologin
- nobody:x:99:99:Nobody:/:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- systemd-network:x:192:192:systemdNetworkManagement:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- polkitd:x:998:996:Userforpolkitd:/:/sbin/nologin
- tss:x:59:59:AccountusedbythetrouserspackagetosandBoxthetcsddaemon:/dev/null:/sbin/nologin
- postfix:x:89:89::/var/spool/postfix:/sbin/nologin
- sshd:x:74:74:Privilege-separatedSSH:/var/empty/sshd:/sbin/nologin
- chrony:x:997:995::/var/lib/chrony:/sbin/nologin
- user4:x:1006:1005::/home/aming111:/sbin/nologin
- saslauth:x:996:76:Saslauthduser:/run/saslauthd:/sbin/nologin
- [root@aminglinux-01grep]#
- ```
- -grep-Ei'root|bus|997'passwd-E因为后面有符号|-i是不区分大小写
- ```
- [root@aminglinux-01grep]#grep-Ei'root|bus|997'passwd
- root:x:0:0:root:/root:/bin/bash
- operator:x:1o1:0:operator:/root:/sbin/nologin
- systemd-bus-proxy:x:999:997:systemdBusProxy:/:/sbin/nologin
- dbus:x:81:81:Systemmessagebus:/:/sbin/nologin
- chrony:x:997:995::/var/lib/chrony:/sbin/nologin
- [root@aminglinux-01grep]#
- ```