Vi/Vim 编辑器使用

℡╲_俬逩灬. 提交于 2019-12-23 19:03:18

一、vi工作模式

  vi  filename  -> 命令模式 -> :wq退出
  输入i a o -> 插入模式 -> Esc键 -> 命令模式
  命令模式 : -> 编辑模式 -> 命令以回车结束运行

二、基本使用

插入命令
    a,在光标后附加文本;

    A,在本行行末附加文本;

    i,在光标前插入文本;

    I,在本行开始插入文本;

    o,在光标下插入新行;

    O,在光标上插入新行

定位命令
  h   方向左键,左移一个字符
  j  方向下键,下移一行
  k   方向上键,上移一行
  l    方向右键,右移一个字符
  $   移至行尾
  0   移至行首
  H     移至屏幕上端
  M 移至屏幕中央
  L  移至屏幕下端

  :set nu      设置行号
  :set nonu    取消行号
  gg              到第一行
  G               到最后一行
  nG             到第n行
  :n                    到第n行

删除命令

  x  删除光标所在处字符
  nx  删除光标所在处后n个字符
  dd  删除光标所在行,ndd删除n行
  dG  删除光标所在行到末尾的内容
  D  删除从光标所在处到行尾
  :n1,n2d  删除指定范围的行

复制和剪切命令

  yy、Y  复制当前行
  nyy、nY  复制当前行以下n行
  dd  剪切当前行
  ndd  剪切当前行以下n行
  p,P  粘贴在当前光标所在行下或行上

替换和取消命令

  r  取代光标所在处字符
  R  从光标所在处开始替换字符,按ESC结束
  u  取消上一步操作

搜索和替换命令

  /string  向前搜索指定字符串搜索时忽略大小写:set ic

  n  搜索指定字符串的下一个出现位置,N前一个位置

  :%s/old/new/g  全文替换指定字符串

  :n1,n2s/old/new /g  在一定范围内替换指定字符串

保存退出
    :wq  快捷键 shift zz      ZZ == :wq
    :wq!  强制保存退出
    :w  保存    :q    退出
    :w  /test/service.bak  另存为一个备份

三、应用实例

1)导入其他文件的内容
  :r    /test/service.bak
2)直接在vi中执行命令
  !命令    !ls -l /test
3)把一个命令执行的结果直接导入到编辑文件当中
  :r    !date
4)vi定义快捷键
  :map ^P I#<ESC>        ^P ctrl+v ctrl+p    加#注释
  :map ^E miniamin@yeah.net
  :map ^B 0x                            去掉#注释
5)连续行注释
  :n1,n2s/^/#/g    (^代表行首)(s指定行,%s全文)
  :n1,n2s/^#//g
  :n1,n2s/^/\/\//g
6)替换
  :ab mymail    miniamin@yeah.net
  :unab mymail    取消
7)编辑vi配置文件保存配置信息
  ~ home directory
  root        /root    users    /home    zhangsan    /home/zhangsan
  ~/.vimrc 配置文件

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!