这更好地与一个例子(是的,来自 .srt 文件):
231
00:13:35,230 --> 00:13:37,120
- Oh, my sister got me into it.
232
00:13:37,129 --> 00:13:38,269
- Yeah?
233
00:13:37,129 --> 00:13:38,269
Is that her?
234
00:13:40,049 --> 00:13:41,090
- Yeah.
该线00:13:37,129 --> 00:13:38,269
出现两次,我想连接这两个部分。所以它必须像这样工作:
- 检查所有包含“-->”的行
- 如果它与先前的此类发现相匹配,则删除此行和上面的两行
所以结果是:
231
00:13:35,230 --> 00:13:37,120
- Oh, my sister got me into it.
232
00:13:37,129 --> 00:13:38,269
- Yeah?
Is that her?
234
00:13:40,049 --> 00:13:41,090
- Yeah.
这远远超出了我的sed
技能。它可能适用于内部缓冲区和模式空间?好吧,我什至不知道如何处理这个......
我会为此使用 awk :
输出:
我认为 awk 版本要好得多,但这里是一个 bash 版本,只是为了好玩 :)