我有几个文件一样file1
,file2
在同一个目录...等等,并且每个文件可以包含多行匹配PATTERN
。
我想N
从匹配的每一行中删除第th 行,PATTERN
例如与N
=3
和file1
内容如
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 个非匹配行分隔,则那里的解决方案只能使用多行匹配模式)。