vi 命令

vi常用命令

vi编辑器有3种模式:命令模式、输入模式、末行模式。掌握这三种模式十分重要:


1、命令模式(command mode)—执行命令

  在该模式中,可以输入命令来执行许多种功能。控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

2、输入模式(Insert mode)—输入文本

  vi被运行时,通常处在命令模式下,键入以下命令 可以使vi退出命令模式,进入输入模式:I(i)、A(a)、O(o)。

3、末行模式(last line mode)—执行待定命令

  将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。不过一般我们在使用时把vi简化成两个模式,就是将末行模式(last line mode)也算入命令行模式command mode)。



wq:保存并退出

q!:不保存退出


移动光标(命令模式使用)

  k   nk:向上移动n行

  j    nj:向下移动n行

  h   nh:向左移动n列

  l    nl:向右移动n列

      gg  可以移到第一行

      G   移到最后一行, nG: 移动到第n行上

  w:  光标以单词向前移动 ,nw:光标向前移动n个单词 光标到单词的第一个字母上

  b:  与w相反

  e:     光标以单词向前移动 ,ne:光标向前移动n个单词 光标到单词的最后一个字母上

  ge:  与e相反

  $:    移动光标到行尾 n$:移动到第n行的行尾

  0(Num):移动光标到行首

  ^:     移动光标到行首第一个非空字符上去

  f:    移动光标到当前行的字符a上,nf:  移动光标到当前行的第n个a字符上

  F:   相反

  %:  移动到与制匹配的括号上去(),{},[],<>等。

  CTRL+G 得到当前光标在文件中的位置


  向前翻页:CTRL+F

  向下移动半屏:CTRL+G

  向后翻页:CTRL+B


删除操作(命令模式使用)
  x删除光标处的单个字符
  dd删除光标所在行
  dw删除当前字符到单词尾包括空格的所有字符
  #x    例如3x删除光标处向右的三个字符
  #dd    例如3dd从当前行开始向下删除三行文本

撤销操作(命令模式使用)
  u命令取消最近一次的操作,可以使用多次来恢复原有的操作
  U取消所有操作
  Ctrl+R可以恢复对使用u命令的操作

复制操作(命令模式使用)
  yy命令复制当前整行的内容到vi缓冲区
  yw复制当前光标所在位置到单词尾字符的内容到vi缓存区,相当于复制一个单词
  y$复制光标所在位置到行尾内容到缓存区
  y^复制光标所在位置到行首内容到缓存区
  #yy例如:5yy就是复制5行
  #yw例如:2yw就是复制两个单词

       p 在光标位置处粘贴


       如果要复制第m行到第n行之间的内容,可以在末行模式中输入m,ny例如:3,5y复制第三行到第五行内容到缓存区。


替换(末行模式下使用)
  :s/old/new用new替换行中首次出现的old
  : s/old/new/g 用new替换行中所有出现的old
  :#,# s/old/new/g用new替换从第#行到第#行中出现的old
  % s/old/new/g用new替换整篇中出现的old


(末行模式)

显示当前行行号:nu

显示所有行号 : set nu

取消显示行号 :set nonumber


命令前面加数字表示重复次数,加字母表示使用的缓冲区名称。
获取帮助,用:help [内容或命令]


  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值