Linux Grep OR,AND,NOT运算符和逻辑示例

grep 是一个非常有用的文本搜索和模式匹配工具。我们已经准备好提供关于 grep egrep . 在本教程中,我们将了解 grep 命令 or , and , not 详细的逻辑运算。

null

示例文本

我们将在教程中使用以下文本 grep 操作。这是曼联足球队的工资单。

David de Gea 26 £200,000 2 Years (2019)Sergio Romero 30 £50,000 4 Years (2021)Marcos Rojo 27 £70,000 2 Years (2019)Phil Jones 25 £50,000 2 Years (2019)Chris Smalling 27 £80,000 2 Years (2019)Eric Bailly 23 £75,000 3 Years (2020)

或逻辑

or 如果其中一个模式匹配,则逻辑匹配所有行。我们将使用 | 说明或逻辑。在这个例子中,我们将看看那些年龄段的球员 23 或者 30 .

$ grep "23|30" manchester.txt
OR Logic
或逻辑

或延长Grep

实现或逻辑的另一种方法是使用 grep 命令扩展选项 -E . 我们将用 | . 在这个例子中,我们将看看那些年龄段的球员 23 或者 30 .

$ grep -E "23|30" manchester.txt
OR with Extended Grep
或延长Grep

或是白鹭

另一个用于实现或逻辑的工具是 egrep . 我们将使用 | 又是接线员。 在这个例子中,我们将看看那些年龄段的球员 23 或者 30 .

$ egrep "23|30" manchester.txt
OR with Egrep
或是白鹭

和逻辑

逻辑将匹配所有提供模式的行。我们将使用 .* 用于和运算符。在这个例子中,我们将列出那些合同是2年,年龄是27岁的球员。

$ grep "27.*2 Years" manchester.txt
AND Logic
和逻辑

多个Grep

另一个实现是使用多个grep命令来过滤给定的模式。 在这个例子中,我们将列出那些合同是2年,年龄是27岁的球员。

$ grep "2 Years" manchester.txt | grep 27
AND with Multiple Grep
多个Grep

不是逻辑

NOT逻辑用于获得与给定模式不匹配的结果。我们将使用 -v grep的选项。在这个例子中,我们将列出那些没有27岁的球员。

$ grep -v "27" manchester.txt
NOT Logic
不是逻辑

没有多个Grep条件

我们可以用多重逻辑来实现非多重逻辑 grep 命令。我们将在bash中通过管道传输多个grep命令。在这个例子中,我们将列出那些不是27岁,没有2年合同的球员。

$ grep -v "27" manchester.txt | grep -v "2 Years"
NOT with Multiple Grep Conditions
没有多个Grep条件

相关文章: Linux剪切命令及其示例

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享