擅长:python、mysql、java
<p>这可能适用于您(GNU-sed):</p>
<pre><code>sed 'N;/^abcd\nvwxyz$/d;P;D' file
</code></pre>
<p>在整个文件长度中创建一个两行窗口,如果当前窗口与所需字符串匹配,则删除该窗口。否则,打印/删除窗口的第一行并附加另一行,重复。你知道吗</p>
<p>这可以扩展到匹配n行:</p>
<pre><code>sed ':a;N;s/[^\n]\+/&/2;Ta;/^abcd\nvwxyz$/d;P;D' file
</code></pre>
<p>概括为2行:</p>
<p>或:</p>
<pre><code>sed ':a;N;s/[^\n]\+/&/3;Ta;/^line1\nline2\nline3$/d;P;D' file
</code></pre>
<p>三条线等</p>
<p>另一种选择:</p>
<pre><code>sed -z 's/^abcd\nvwxyz\n//mg' file
</code></pre>