unix - 如何从 grep 中保存匹配和不匹配的内容

标签 unix grep pattern-matching matching

我经常使用 grep,并且熟悉它返回匹配行(默认情况下)和不匹配行(使用 -v 参数)的能力。但是,我希望能够对文件进行一次 grep 来分隔匹配行和不匹配行。

如果不可能,请告诉我。我意识到我可以在 perl 或 awk 中轻松完成此操作,但我很好奇是否可以使用 grep 实现。

谢谢!

最佳答案

如果它不必是 grep - 这是基于模式的单遍分割 - 找到模式 > file1 未找到模式 > file2

awk '/pattern/ {print $0 > "file1"; next}{print $0 > "file2"}' inputfile

关于unix - 如何从 grep 中保存匹配和不匹配的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15789228/

相关文章:

F#/OCaml : How to avoid duplicate pattern match?

regex - 每行计数模式出现

c - objdump 报告的符号偏移量不再与运行时偏移量匹配

linux - 将应用程序嵌入到窗口中

java - 了解 lsof 输出

grep - 仅当模式 1 和模式 2 在连续行中匹配时如何 grep

grep/ack -o 带有上下文字符(不是行)

java - 在replaceAll正则表达式中使用\b

regex - 如何从文件中删除与正则表达式不匹配的行?

f# - 单元测试 : '[] |> should equal List.empty' is not working as expected