我有一个如下所示的文件。我想删除 foo 之前的所有行,但只保留最后一个 bar 实例。 输入:
bar1
foo
bar1
bar2
bar3
foo
bar5
bar6
bar7
foo
输出:
bar1
foo
bar3
foo
bar7
foo
有人可以帮我实现这个吗?我正在尝试使用 sed 但我所有的尝试都没有给出任何结果。
最佳答案
我希望它不必是 sed
。使用 grep
的 -B
选项打印匹配行和它之前的 1 行:
grep -B 1 foo input > output
关于linux - 使用 sed 删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19853275/