微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将Vim中的行删除并重定向到另一个文件

我想删除说最后10行并将其移动到另一个文件.

我现在做的是:

>在可视模式下选择最后10行,
>将这些行写成:’<,'> w到其他文件,
>然后删除选定的行.

有没有更有效的方法可以做到这一点?

解决方法

您可以改用ex命令.例如

:1,10w file.name写下前十行

:$ – 9,$w file.name写下最后十行(美元符号表示最后一行)

使用.vimrc中的以下代码,您可以使用命令:Moveto file.name

function! MoveLastLines(f)
  exe '$-9,$w ' . a:f    "write last ten lines to the passed filename
  $-9,$d                 "delete last ten lines
endfunction

command! -nargs=1 -range Moveto :call MoveLastLines(<f-args>)

在正常模式下,您提到的步骤(GV9k:w file.name gvd)在我看来是最有效的.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐