【发布时间】:2017-11-03 06:53:52
【问题描述】:
我有一个这样的文本文件。
...
# xxx start
...
# xxx end
...
我想替换# xxx start 和# xxx end 之间的行。
如果# xxx start 未出现,请在文件末尾附加# xxx start 和# xxx end。
有什么办法可以用shell来做吗?
【问题讨论】:
-
与
awk一起做。 -
你想用什么替换它们?
-
@Barmar 我认为可以用sed来完成,但是我不知道如何获取
# xxx start的行号 -
为什么需要行号?只需使用
/# xxx start/,/# xxx end/作为您的地址范围。 -
但是如果没有找到这些行,则在末尾添加行将很难使用
sed。awk很容易,因为您可以设置一个变量并在最后检查它。