我与文本的某些文件:在grep搜索中返回行吗?
xxxxx
xxxxx
<cert>
</cert>
some other stuff
如何搜索使用grep和忽略该行的回报? 我在同一个文件夹中有很多文件。 我都试过,但它似乎并没有停止运行:
tr '\n' ' ' | grep '<cert></cert>' *
我与文本的某些文件:在grep搜索中返回行吗?
xxxxx
xxxxx
<cert>
</cert>
some other stuff
如何搜索使用grep和忽略该行的回报? 我在同一个文件夹中有很多文件。 我都试过,但它似乎并没有停止运行:
tr '\n' ' ' | grep '<cert></cert>' *
即寻找一个多行模式,这通常grep
不出现支持。有替代工具,例如,
然而,GNU的grep被所述,以支持这个问题,以及:
How do I grep for multiple patterns on multiple lines?给出作为一个例子
grep -Pzo "^begin\$(.|\n)*^end$"
文件
在模式中使用换行符。然而所用的选项包括 “实验” -P
这可能使得不太适合比pcregrep
:
-P, --perl-regexp
解释PATTERN作为一个Perl正则表达式。这是高度 实验和grep -P可能会警告未实现的功能。
-z, --null-data
对待输入作为一组线,由零 字节(ASCII NUL字符),每个封端的,而不是一个新行。像 -Z或--null选项一样,该选项可以与 sort -z命令一起使用来处理任意文件名。
-o, --only-matching
仅打印匹配的(非空)的匹配线,与 上一个单独的输出线每一个这样的部分的部分。
一些实验选项是有用的,有些则不然。这一个在Searching for non-ascii characters中被指出是问题的根源。
将您希望的输出样本输入添加到您的问题中。 – Cyrus
使用GNU grep来完成这项工作。 – Cyrus