仅当文件中存在多个字符串时才返回结果

仅当文件中存在多个字符串时才返回结果

是否有一个 Linux 实用程序,仅当文件包含多个指定字符串时才返回文件的名称?不一定在同一行。显然 grep 可以“OR”,但我正在寻找“AND”。

答案1

对于简单的事情,您可以使用grepawk,对于更复杂的事情,您将需要一种编程语言。可能最好的方法是从脚本语言开始,例如:python、perl、php、javascript。

grep命令可用于或:

ls|egrep 'first_pattern|second_pattern"

或者匹配两种模式:

ls|egrep "first_pattern.*second_pattern|second_pattern.*first_pattern"

为了更好地了解如何编写 RegEx 模式,请参阅:https://en.wikipedia.org/wiki/Regular_expression

可以使用解析器生成器编写真正复杂的解析器,例如反转录病毒

相关内容