我有一个包含大约5000行的文件,我想删除所有包含'some_string'的行,所以我首先搜索/some_string
然后执行:g//d
。删除约90%的行需要5分钟。是什么给了什么?
相比之下,如果我运行sed -i '/some_string/d' some_file
则需要46毫秒。
答案 0 :(得分:1)
在命令中添加下划线。
我遇到了类似的问题,结果是每一行被复制到我的系统剪贴板。通过添加_
,您告诉vim使用黑洞寄存器。
:g//d_
帮助为:d
:[range]d[elete] [x] Delete [range] lines (default: current line) [into register x].