vi 的基本使用

参考网站:

my.oschina.net/winHerson/blog/88315

blog.sina.com.cn/s/blog_4fcd1ea30100x3i4.html

vi ( m ) 的叁种模式简介

  一般模式


  在一般模式下,您所能进行的动作只有移动游标屏幕上的位置,标记、删除、搬移、复制字符或文字区块。此外您可以由命令模式进人输入模式虽命令列模式。


  输入模式


  只有在输入模式下,才可进行文字资料输入,按 ESC 键可以回到一般模式。


  命令列模式


  将文件写入或离开编辑器,亦可设定编辑环境,如寻找字串、列出行号等。


  
vi ( m ) 的基本操作 http://write.blog.csdn.net/postedit?ref=toolbar

  进人 vi


  在系统提示符号下输入 vi 及文件名称后即进入 vi 全屏幕编辑画面,且在一般模式下。输入模式下编辑文件:在一般模式下可按 'i' 或 'a' 或 'o' 叁键进入编辑模式。


  "i" insert - 在目前游标之处插入所要输入之文字


  "a" append - 在目前游标所在的下一行开始输入文字


  "o" open - 新增一行在游标的下,并从行首开始输人文字


 
 离开 vi 及保存

  在一般模式下可按 ':' 键进人命令列模式:

       :w 保存


  :w filename ( 存入指定文件 )  补充:保存到指定文件目录: :w /your/directory/filename


  :wq ( 写入并离开 vi )

  :q! ( 强迫离开并放弃编辑的文件 )


  :n [ 文件 ] - 引入下一个文件


  :l,l2d - 删除自行l至行 l2 的文字


  :l,l2s/patternl/pattern2/g - 将行 l 至行 l2 的文字, patternl 的字串改为 pattern2 的字串,如无 g 则仅更换每一行所匹配的第一个字串,如有 g 则将每一个字串均做更换


  
一般模式功能键简介

  移动游标


  h、j、k、l:分别控制游标左、下、土、右移一格

向上箭头   向上移动;
向下箭头   向下移动;
向左箭头   向左移动;

向右箭头   向右移动

我们编辑一个文件时,对于 j、k、l和h键,还能在这些动作命令的前面加上数字,比如 3j,表示向下移动3行

  Ctrl+b : 往前一页

  Ctrl+f : 往后一页


  G : 移到文件最后


  w : 移到下个 word 的开头


  b : 跳至上个 wore 的开头


  删除


  x:删除所在后面一个字符


  #x:ex:5x 表删除 5 个字符


  dd:删除游标所在之行


  #dd:例,5dd 表删除自游标算起之 5 行


  更改


  cw:更改游标处之字到此一单字之字尾处


  c#w:例,c3w表更改 3 个字


  取代


  r:取代游标处之字符


  R:取代字符直到按 ESC 为止


  复制


  yw:拷贝游标处之字到字尾至缓冲区


  P:把缓冲区之资料贴上来


  yy:拷贝游标所在之行至缓冲区


  #yy:ex:5yy,拷贝游标所在之处以下 5 行至缓冲区

*******************************************************************************************'

其实删除也带有剪切的意思,当我们删除文字时,可以把光标移动到某处,然后按shift+p键就把内容贴在原处,然后再移动光标到某处,然后再按p或shift+p又能贴上;

p 在光标之后粘帖;
shift+p 在光标之前粘帖

来举一例:

比如我们想把一个文档的第三行复制下来,然后帖到第五行的后面,我们应该怎么做呢?

有两种方法;

第一种方法:

先把第三行删除,把光标移动到第三行处,然后用dd动作,接着再按一下shift+p键。这样就把刚才删除的第三行帖在原处了。

接着我们再用k键移动光标到第五行,然后再按一下p键,这样就把第三行的内容又帖到第五行的后面了;

第二种方法;

进入可视模式,按ESC键,然后按v键。移动鼠标指针,选中第三行的内容,然后按y键复制;再移动指针到第五行,最后按p键;

*************************************************************************************************************************8

  复原


  u:undo,复原至上一动作


  跳至指定之行


  g:列出行号,及相关信息


 命令列下命令简介


  注意:使用前请先按 ESC 键确定在一般模式下按 ':' 或 '/' 或 '?' 叁键即可进入命令列模式


  列出行号


  :set nu


  
寻找字串

  /word ( 由首至尾寻找 ),按 n 可往下继续找

  ?word ( 由尾至首寻找 ),按 N 可往前继续找

  跳行


  :100 - 可跳至第 100 行 http://write.blog.csdn.net/postedit?ref=toolbar


参考文档:

man vi 和 vi --help


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值