LINUX中VI与VIM的常用命令

VI与VIM的常用命令

注:由于VI与VIM在命令上几乎相同,所以这里那VIM为例。

1、模式转换

正常–>输入:以下这几个参数实现的功能都是转为输入模式,只不过转换后的光标所在的位置不同(感兴趣可以试一试,虽然意义不大!)

  •  i:在当前光标所在字符的前面,转为输入模式;           
    
  •  a:在当前光标所在字符的后面,转为输入模式;            
    
  •  o:在当前光标所在行的下方,新建一行,并转为输入模式;           
    
  •  I:在当前光标所在行的行首,转为输入模式;           
    
  •  A:在当前光标所在行的行尾,转为输入模式;
    
  •  O:在当前光标所在行的上方,新建一行,并转为输入模式;
    

输入–>正常:

  •    ESC
    

正常–>末行:

  •  :(英文冒号)
    

末行–>正常:

  • ESC,ESC
    

== 注意:输入模式和末行模式之间不能直接切换。==

2、关闭文件(末行模式)

  • :q        退出;
    
  • :q!       不保存退出;
    
  • :w        保存;
    
  • :w!        强行保存;
    
  • :wq        保存退出
    
  • :wq!        强制保存并退出
    

注意:在正常模式下按组合键shift zz可以保存并退出

3、移动光标(正常模式)

1)逐字符移动:

  • h: 左;
    
  • l: 右;
    
  • j: 下;
    
  • k: 上;
    
  • #h: 移动#个字符
    

2)以单词为单位移动

  • w: 移至下一个单词的词首;
    
  • e: 跳至当前或下一个单词的词尾;
    
  • b: 跳至当前或前一个单词的词首;
    
  • #w: 移动#个单词
    

3)行内跳转:

  • 0: 绝对行首;
    
  • ^: 行首的第一个非空白字符;
    
  • $: 绝对行尾
    

4)行间跳转

  • #G:跳转至第#行
    
  • gg: 第一行;
    
  • G:最后一行
    

5)末行模式

  • .: 表示当前行;
    
  • $: 最后一行;
    
  •  #:第#行;
    
  • +#: 向下的#行
    

4、翻屏(正常模式)

  • Ctrl+f: 向下翻一屏;
    
  • Ctrl+b: 向上翻一屏;
    
  • Ctrl+d: 向下翻半屏;
    
  • Ctrl+u: 向上翻半屏
    

5、复制字符

1)正常模式

复制:

  • yy:复制当前行
    
  • nyy:复制当前行至下面的n行
    

粘贴:

  • p:粘贴到光标的后面
    
  • P:粘贴到光标的前面
    

2)可视模式

复制:

  • y:复制当前行
    
  • ny:复制当前行至下面的n行
    

粘贴:

  • p:粘贴到光标的后面
    
  • P:粘贴到光标的前面
    

6、删除字符(正常模式

  • x: 删除光标所在处的单个字符;
    
  • #x: 删除光标所在处及向后的共#个字符;
    
  • d$或D:从当前光标处删除至行尾;
    
  • d^:从当前光标处删除之行首;
    
  • dd: 删除当前光标所在行;
    
  • #dd: 删除包括当前光标所在行在内的#行;
    

注:dd相当于剪切操作,如果你dd之后按p或者P可以进行粘贴。

7、替换字符

  • r:替换单个字符(按完r在按你要替换的字符即可)
    
  • R:替换多个字符(从你要替换的位置开始替换,直至你退出正常模式)
    

8、撤销编辑操作:u

  • u:撤消前一次的编辑操作;
    
  • #u:直接撤消最近#次编辑操作;
    

温馨提示:连续u命令可撤消此前的n次编辑操作;

9、将另外一个文件(/path/sunhui.txt)的内容填充在当前文件夹中

  • :r   /path/sunhui.txt :填充到当前文件所在光标的后面
    

10、修改vim配置文件

  • vim   ~/.vimrc:修改当前用户的vim配置文件
    
  • vim    /etc/vimrc:修改所有用户的vim配置文件
    
  • 例:在当前用户的vim配置文件中添加显示行数的命令
  • vim    ~/.vimrc:在末行添加 set nu 即可
    

11、拓展(末行模式)

1)显示或取消显示行号

  • :set    nu            //显示
    
  • :set    number    //显示
    
  • :set    nonu        //取消
    

    2)设置语法高亮

  • :syntax    on    //开启
    
  • :syntax    off    //关闭
    

3)分屏

  • :vsp xxx.x    //将两个文件垂直分屏
    
  • :ctrl+w w   //切屏
    

以上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值