grep 多条件并行满足_grep多个条件

曾经希望用grep来搜索多个条件的时候,发现不知道怎么用,百度之后有以下两种

1. AND条件

使用 -E 'pattern1.*pattern2'实现AND操作。

grep -E 'pattern1.*pattern2' filename grep -E 'pattern1.*pattern2|pattern2.*pattern1' filename

第一个例子如下:(其中两个pattern的顺序是指定的)

$ grep -E 'Dev.*Tech' employee.txt 200 Jason Developer Technology $5,500

第二个例子:(两个pattern的顺序不是固定的,可以是乱序的)

$ grep -E 'Manager.*Sales|Sales.*Manager' employee.txt

2. OR条件

grep 同时满足多个关键字和满足任意关键字

① grep -E "word1|word2|word3"   file.txt

满足任意条件(word1、word2和word3之一)将匹配。

② grep word1 file.txt | grep word2 |grep word3

必须同时满足三个条件(word1、word2和word3)才匹配。


版权声明:本文为weixin_39834767原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。