分类:
2009-04-14 15:57:19
如何用vi 复制第5行到第10行并粘贴到第12行之后?
1.行拷贝还有一个比较简单的方法:
操作如下:
找到要复制的行,键盘按下shift+v, 然后用方向键上下或j h 移动想要copy的行,然后按下y在移动到目的行,按下p即完成拷贝多行。这种方法适合没有行号的多行copy。
2.光标放到第五行,
输入:y6y
光标放到第12行,
输入:p
3.命令行模式下输入
:5,10 co 12
4.延伸一下, 有时候不想费劲看多少行或复制大量行时,可以使用标签来替代
光标移到起始行,输入ma
光标移到结束行,输入mb
光标移到粘贴行,输入mc
然后 :'a,'b co 'c
把 co 改成 m 就成剪切了
5.可以把大量的代码保存到一个文件,然后在另一个文件里打开需要拷贝的代码。
在文件一:
光标移到起始行,输入ma
光标移到结束行,输入mb
然后:'a, 'b w filename
在文件二:
光标移到需要赋值的行,输入:
:r filename
6.copy我常用下面这种方法:
光标移到结束行,输入ma
光标移到起始行,输入y'a
光标移到需要复制的行,输入p,行前复制输入大写P
7.Vi 提供了文本移动和复制命令,用户利用这些指令可以方便的复制字符、文字、行还有文本块。
有关的命令如下:
yy 将当前行复制到缓冲区
yw 将当前单词复制到缓冲区
y1 将光标处的一个字符复制到缓冲区
p 将缓冲区的信息粘贴到光标的后面
:行号1 ,行号2 copy 行号3 将行号1到行号2的内容复制到行号3所在行的后面。
:行号1 ,行号2 move 行号3 将行号1到行号2的文本内容移动到行号3所在行的后面。
8.在vi中,vi a.txt b.txt,一下子打开2个文件,何以用缓冲区在文件中互相copy,(或者打开a.txt,然后vi命令行:e b.txt)可以互相copy,在 vim中,离开vim,缓冲区依然存在文件内容。可以vim a.txt 然后退出vim,再vim b.txt.