在vim当我的光标在第一行时,我可以按:
100dd
删除前100行.
但我怎么删除所有线,除了在最后 100行?
在正常模式下:
G100kdgg
换一种说法:
G -> go to last line 100k -> go up 100 lines dgg -> delete to top of file
在ex模式下:
:1,$-100d
说明:":"将编辑器置于"ex模式".ex模式的d命令删除指定为单行号或行范围的行.$是最后一行,算术可以应用于行号.
另一种通用解决方案:
:%!tail -100
您可以在!
任意修改当前缓冲区后使用任何shell命令.Vim启动命令并将当前文件提供给stdin
,并从中读取新缓冲区stdout
.