如何通过grep 命令去查找多个字符串模式?例如,通过grep命令同时查找user1,user2,user3,怎么实现呢?
例1,grep命令可以使用正则表达式来做字符串的匹配,为了查找多个字符,可以使用命令:
[root@devops ~]# grep 'user1\|user2\|user3' /etc/passwd
user1:x:501:501::/home/user1:/bin/bash user1add:x:503:503::/home/user1add:/bin/bash user2:x:504:504::/home/user2:/bin/bash user3:x:505:505::/home/user3:/bin/bash
例2,只匹配整个单词,可以使用-w 选项:
[root@devops ~]# grep -w 'user1\|user2\|user3' /etc/passwd
user1:x:501:501::/home/user1:/bin/bash user2:x:504:504::/home/user2:/bin/bash user3:x:505:505::/home/user3:/bin/bash
例3,grep命令的扩展版本egrep,带有更复杂的正则表达式元字符,对于以上例子,如果使用egrep,那么可以省略转义字符,如下:
[root@devops ~]# egrep -w 'user1|user2|user3' /etc/passwd
user1:x:501:501::/home/user1:/bin/bash user2:x:504:504::/home/user2:/bin/bash user3:x:505:505::/home/user3:/bin/bash
例4,让查找到信息高亮显示,可以使用–color选项。
[root@devops ~]# egrep -w --color 'user1|user2|user3' /etc/passwd
user1:x:501:501::/home/user1:/bin/bash user2:x:504:504::/home/user2:/bin/bash user3:x:505:505::/home/user3:/bin/bash 以上就是grep命令同时查找与匹配多个字符串的方法与例子。 (责任编辑:IT) |