使用 Grep 模式时在结果后添加行分隔符

使用 Grep 模式时在结果后添加行分隔符

我试图用空行将 grep 结果分开,但我不知道该放在哪里,或者在使用 -e 时是否可以使用组分隔符:

tail -100 testing.log | grep -e pattern1 -e pattern2 -e pattern3 -e pattern4 --group-separator=$'\n\n'

如果我将组分隔符移到 -e 之后,它会抱怨 pattern2 不是文件/目录

tail -100 testing.log | grep -e pattern1 -e --group-separator=$'\n\n' pattern2 -e pattern3 -e pattern4 

答案1

您正在寻找 GNU 用户的概要(如手册中所示)grep

grep [OPTIONS] -e PATTERN ... [FILE]

也就是说,如果您有 的选项grep,则这些选项应该首先出现在用 给出的任何模式表达式之前-e。在你的情况下:

grep --group-separator=$'\n\n' -e pattern1 -e pattern2 -e pattern3 -e pattern4

但请注意,除非您将 GNU与,或一起--group-separator使用,否则这不会生效。grep-A-B-C

相关内容