我正试图过滤掉日志文件中不停重复出现的几个文本块。例如: grep -v ("string one that I don't want" \| "string two that I don't want") file.log 我尝试了几种不同的方法,并调整了空格。有时它会过滤掉第一个字符串,有时两个都不行。使用grep正确的格式是什么,以便过滤出多个文本块?
您可以在grep命令中多次使用-e选项,以跳过多个搜索项:grep -v -e "string one that I don't want" -e "string two that I don't want" file.log 或者使用 grep -E 命令结合正则表达式来支持扩展的正则表达式: grep -vE 'string one|string two' file.log
-v
与--invert-match
是同义词(详情请参考这里)。如果没有这个提示,我会猜测-v
代表"verbose"而产生困惑。 - Frank N