当前位置:  技术问答>linux和unix

一vi问题

    来源: 互联网  发布时间:2015-05-30

    本文导语:  用vi写程序代码时,请问怎样进行拷贝,查找和替换操作?谢谢! | 我这里有本vim中文版的教程,楼主有兴趣,我可以发给你。 | VI高级命令集锦   1.交换两个字符位置  xp...

用vi写程序代码时,请问怎样进行拷贝,查找和替换操作?谢谢!

|
我这里有本vim中文版的教程,楼主有兴趣,我可以发给你。

|
VI高级命令集锦

 

1.交换两个字符位置 

xp 
2.上下两行调换 
ddp 
3.把文件内容反转 
:g/^/m0/ (未通过) 

4.上下两行合并 

5.删除所有行 
dG 
6.从当前位置删除到行尾 
d$ 
7.从当前位置复制到行尾 
y$ 如果要粘贴到其他地方 p 就可以了 


由于vi 是建立在 EX 上的 所以 当键入 : 时就来到了 EX 命令状态 
8. 
:ab string strings 
例如 ":ab usa United States of America" , 
当你在文见里插入 usa 时 
United States of America 就蹦出来了 
9. 
:map keys new_seq 
定义你当前 键盘命令 
10. 
:set [all] 
vi or ex 的编辑状态 
如 显示每行 :set nu 
11. 
在命令状态下,nyy表示拷贝从光标行起的下n行内容,p表示paste,可刚复制的内容粘贴在光标处的 
下面。 

12. 
单个字符替换用r,覆盖多个字符用R,用多个字符替换一个字符用s,整行替换用S 

13. 

:%s/old_word/new_word/g 
这个指令是于在整个文件中替换特定字符串 

14.光标控制 

k:上移 nk 上移n行 
j:下移 nj 下移n行 


将光标移到第n行,按下 mk 
将光标移到第m行,按下 "ay'k 
即将第n到m的行存到a寄存器,以此类推,b,c........寄存器等 

这样就可以将你常用的需要复用的内容粘贴到不同的寄存器中以备用 


想粘贴到某处,直接将光标移到某地,按下 ‘ap 即可,以此类推,b,c........寄存器等 

在当前屏幕中 
H 跳到第一行 
M 跳到中间一行 
L 跳到最后一行 

15. 
表8-2 删除命令 
删除命令操作 
d l 删除当前字符(与x命令功能相同) 
d 0 删除到某一行的开始位置 
d ^ 删除到某一行的第一个字符位置(不包括空格或TA B字符) 
d w 删除到某个单词的结尾位置 
d 3 w 删除到第三个单词的结尾位置 
d b 删除到某个单词的开始位置 
d W 删除到某个以空格作为分隔符的单词的结尾位置 
d B 删除到某个以空格作为分隔符的单词的开始位置 
d 7 B 删除到前面7个以空格作为分隔符的单词的开始位置 
d) 删除到某个语句的结尾位置 
d 4) 删除到第四个语句的结尾位置 
d( 删除到某个语句的开始位置 
d } 删除到某个段落的结尾位置 
d { 删除到某个段落的开始位置 
d 7 { 删除到当前段落起始位置之前的第7个段落位置 
d d 删除当前行 
d /t e x t 删除从文本中出现“ t e x t”中所指定字样的位置,一直向前直到下一个该字样所出现的 
位置(但不包括该字样)之间的内容 
d fc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括 
该字符)之间的内容 
d tc 删除当前行直到下一个字符“ c”所出现位置之间的内容 
D 删除到某一行的结尾 
d $ 删除到某一行的结尾 
5 d d 删除从当前行所开始的5行内容 
d L 删除直到屏幕上最后一行的内容 
d H 删除直到屏幕上第一行的内容 
d G 删除直到工作缓存区结尾的内容 
d 1 G 删除直到工作缓存区开始的内容 



|
查找 esc切换模式 ?或者/ 输入要查找的字符串。
拷贝不同的系统不一定一样,一般都是shift+Insert

|
拷贝是用y加光标移动命令选中,用p或P粘贴。自己man vi,或者到网上找《Learning Vi》的电子版,经典书籍。
替换用s/oldstring/newstring/g命令行,或者当前位置用r、s等命令。

vi是需要下功夫才能入门的。

|
假如拷贝3行:在要拷贝的第一行按3yy,再把光标移动到要粘贴的地方按p。其他的依此类推

|
yy -- Yank
p -- Paste after
P -- Paste before

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • 简单问题简单问题简单问题简单问题
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • 小问题,急问题,重大问题!!!
  • sharepoint 2010中item.Update()和item.SystemUpdate 修改数据版本问题解决
  • 弱弱的一问,linux下的中文问题及网络问题,分不是问题
  • 八个问题帮你快速了解Docker
  • 请教两个小问题:一个cgywin下使用vi的问题,另一个socket的问题
  • 错误:将'const x'作为'x'的'this'实参时丢弃了类型限定问题解决
  • 网页的编码问题!或者java的编码问题,由此引出一条解决中文问题的思路
  • nginx Windows版相关问题及使用说明
  • 死锁的问题 多级锁定问题 循环锁定问题
  • vs2010下禁用vmware的方法以及解决vmware插件导致vs2010变慢的问题
  • [问题]双系统出现的问题!求问题的原因和解决办法!
  • Linux下时钟同步问题:Clock skew detected原因分析及解决方法
  • 初学者问题。一个是编译hello world的问题,一个是配置ssh的问题
  • c/c++服务器程序内存泄露问题分析及解决
  • C程序问题:哪个高手帮我解释下下面的问题,主要是a[0]和&[0] 的区别 和编译器的问题??
  • ​部署 Docker 前必须问自己的四个问题
  • swing的问题还是jbuiler的问题??
  • spring的事务类型及spring和hibernate可能导致的问题分析
  • 菜鸟第一次安装红帽子7.2的一箩筐问题。每个问题会开个帖子,各放100分!请有安装经验的老鸟们帮忙解决。第二个问题:什么是LILO?怎么样


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3