linux - Linux 上不同元素之间输出的 Grepping 日志

标签 linux grep

我将如何反复搜索文件,从一段文本开始到另一段结束?
例如,我有一个非常大的日志。整个日志中有一些部分以特定文本开始和结束,例如:

[startset]
blah blah blah
[/startset]

我只想收集[startset] 和[/startset] 之间的文本。此部分重复出现,因此我需要循环并继续执行此操作,直到所有文本都已收集(并转储到单独的文件中)

谢谢

最佳答案

您可以使用 awk。这使用来自 Bens 帖子的数据:

awk '/\[\/startset\]/ {f=0} f; /\[startset\]/ {f=1}' file
grab this 1
grab this 2
grab this 3
grab this 4

总的来说

awk '/stop/ {f=0} f; /start/ {f=1}'

如果满足条件,使用标志 f 控制输出。

关于linux - Linux 上不同元素之间输出的 Grepping 日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24616795/

相关文章:

regex - Perl 正则表达式量化 Error precced

BASH 将文本文件操作为数组

Linux 上的 PHP Ping 超时不起作用

c++ - 使用 C++ 查找端口是否可用于 linux

linux - 内核必须在上下文切换之间保存什么内存 "state"?

linux - Grep 从不同的机器访问服务器的方式不同

linux - 字典的Grep过滤

regex - 在Perl中的两个字符串之间进行摸索

php - E : Package 'php-xmlrpc' has no installation candidate

linux - Perl 编写 excel 以在各种工作表中创建包含包含公式的单元格的图表