vi的剪切、复制、粘贴、删除

注:以下操作均为在vi命令模式下有效。

一、首先想说的是两个最重要的操作:

1.撤销操作:u

2.恢复操作:ctrl+r

二、删除:delete

与删除的相关的命令:

1.删除从光标所处字符开始的一个字串:dw


 
2.删除从光标开始n个字串:ndw
 
3.删除从光标字符开始的一行:D或d$
 
4.删除光标所在行:dd
 
5.删除从光标开始的n行:ndd
 
6.几个不常用的:d):删除到下一句;
        d}:删除一段;
        d回车:删除两行。
 
三、获取删除内容。
vi会缓冲近1-9的删除内容,最后一次操作缓冲标记为1,以此类推。
引用缓冲:"lable, 引号加缓冲标记;自己可以建立a-z的缓冲标记:m[a-z];
粘贴缓冲内容:p, 因此,粘贴缓冲编号1的内容:"1p
如果要粘贴多次:"lable|number|p  (注:|:不需要输入,仅为掩饰使用,以下同)
 
四、选择文本区:
v:定锚后,移动方向键选择范围。
 
五、复制
1、选定范围后:y  ;
2、y'lable:复制从标记行到光标所在行的文本;
3、复制当前行:yy
4、复制当前字:yw
5、复制从光标开始后的n行至缓冲区a:"a3y 或3yy
6、复制从标记a行到标记b行的的数据并粘贴到标记c行:'a,'b co 'c;
  而:'a,'b m ’c:为剪切;
  也可以用文本的行号:选择范围:2,3 后,执行剪切、复制、粘贴(co|m|de)。
7、复制到另外的文本中:
  如将a-b之间的内容写入test.c:'a,'b w! test.c(注:原来内容被清除)
  而'a,'b w! >>test.c 为追加的方式。
 
总结:粘贴:p  ; 复制:y ; 删除:d ;  引用标记:'lable ; 引用缓冲区:"lable
 
 
 
 
 
 
 
 
 
原文地址:https://www.cnblogs.com/buddy/p/2676042.html