我正在尝试拆分文件。sed
可用于执行此操作,例如
sed -e '0,/expr/d' filename
将在“expr”之后给出文件的下半部分但是如果出现不止一次并且我想在第 n 次出现后拆分怎么办?我想在第二次出现之后我是否想要它
sed -e '0,/expr/! {/expr/,$d}' filename
给出文件的上半部分直到 "expr" 的第二个匹配项。感叹号 (!) 告诉它忽略第一个范围,仅将大括号中的命令应用于文件的其他部分。
但是更一般的情况呢?例如,从倒数第二次开始。
我一直在sed
这里使用,但我认为awk
也会有优雅的解决方案。