vim整段删除或者替换


有一段这样的文本


 As of initscripts-2012.07.5, the default format of /etc/rc.conf and
/etc/crypttab have changed. See their respective man pages for 
more details.

--BEGIN--
The purpose of this change is to unify the configuration of systemd
and initscripts. This will allow us to share code and documentation, 
and should make maintenance of initscripts simpler in the long-run.
--END--

The old format is still supported, so old config files should still
work unchanged.

希望能吧 --BEGIN-- --END-- 之间的所有行都删除掉,vim有什么直接的方法吗?

另外一个附加的问题,就是已经有
--BEGIN-- 标志了,如何能添加一段内容。

以上都是希望能脚本化的处理文本文件。


只是一个例子,--BEGIN--,--END--之间的行数不确定
手动标记这个,有点辛苦,实际文件不小,而且类似的结构
比较多.

vimscript vim

kdsxsl 10 years, 4 months ago

:g/--BEGIN--/,/--END--/d
如果要同时删除前后的空行
:g/--BEGIN--/-1,/--END--/+1d

糟糕的狐狸 answered 10 years, 4 months ago

Your Answer