相关疑难解决方法(0)

从匹配模式的每一行中删除第 N 行

我有几个文件一样file1file2在同一个目录...等等,并且每个文件可以包含多行匹配PATTERN
我想N从匹配的每一行中删除第th 行,PATTERN例如与N=3file1内容如

1 no match
2 PATTERN
3 same PATTERN
4 no match here
5 no match here either
6 another PATTERN
7 again, no match
8 no
9 last line
Run Code Online (Sandbox Code Playgroud)

预期的输出是

1 no match
2 PATTERN
3 same PATTERN
4 no match here
7 again, no match
8 no
Run Code Online (Sandbox Code Playgroud)

就地编辑文件是一种奖励,而不是要求(尽管gnu我知道至少有一种工具可以一次性编辑所有文件......)


这里提出一个类似的问题,但这是一个特殊情况(每个文件中只有一个单行匹配模式,如果它们被至少N + 1 个非匹配行分隔,则那里的解决方案只能使用多行匹配模式)。

text-processing

4
推荐指数
1
解决办法
1025
查看次数

标签 统计

text-processing ×1