分类: Linux
Vim中截取内容保存为新文件

按 Escape进入命令模式,然后输入 :start,endw file,其中的 start 是当前文件中要保存的第一行,end 是要保存的最后一行,w 表示希望写到另一个文件中(或者覆盖现有的文件),file 是指定的部分要保存到的文件。对于最后一行,可以使用 $ 表示文件的末尾。可以在 w 后面使用两个大于号(>>)表示希望把内容附加到文件中而不是覆盖文件。
举例:
vim 打开data.csv文件,按esc,切换到命令模式,截取第2到200行到新文件test.csv中:

2,200 w /tmp/test.csv

追加到原有文件中命令:加上 “>>” 表示追加而不覆盖!

:201,380 w >> /tmp/test.csv

几个常用的tips:

d{motion}:剪切 motion 命令跨过的字符到剪贴板。比如,dw 会剪切一个词而 dfS 会将从当前光标到下一个 S 之间的字符剪切至剪贴板。
y{motion}:和上面类似,不过是拷贝。
c{motion}:和 d{motion} 类似,不过最后进入插入模式。
dd:剪切当前行。也可以后面带数字,表示多少行
yy:拷贝当前行。也可以后面带数字,表示多少行
cc:剪切当前行并且进入插入模式。
D:剪切从光标位置到行尾到剪贴板。
Y:拷贝当前行。
C:和 D 类似,最后进入插入模式。
x:剪切当前字符到剪贴板。
s:和x类似,不过最后进入插入模式。

发表新评论