2018-09-24 vim命令详解

vim:文本编辑器
vi:visual interface
vim: VI improved
全屏编辑器,模式化编辑器

  • vim打开文件 vim /path/to/somefile
    如果文件存在就表示打开文件,如果不存在就表示新建文件,并且编辑文件。
    vim +12 inittab
    打开文件并且光标在12行
    vim + inittab
    打开文件,光标在文件最下方
    vim +/PATTERN
    vim +/mul inittab
    打开文件并在模式第一次匹配到的行的行首
  • 关闭文件
    vim模式:
    编辑模式 :所有命令都理解为编辑整个文档的(例如:粘贴,复制,删除)
    输入模式:所有命令当作输入内容保存在文档(被当作输入内容保存在文件中)
    末行模式:可以输入很多文档管理命令(除了编辑命令的更多管理命令)
  • 默认是处于编辑模式的
    模式转换
    编辑模式--> 输入模式
    i:在当前光标所有字符的前面,转为输入模式
    a:在当前光标所在字符的后面,转输入模式
    o:在当前光标所在行的下方,新建一行并转输入模式
    I:在当前光标所在行的行首转输入模式
    A:在当前光标所在行的行尾转输入模式
    O:在当前光标所在行的上一行转输入模式
    输入模式--> 编辑模式
    ESC:还原为编辑模式
    编辑模式 --> 末行模式

    :10,20d 删除10-20行
    :set nu 每一行显示行号
    :! 可以直接执行shell命令
    末行模式 --> 编辑模式
    :ESC
    关闭文件:
    1.在末行模式下关闭文件
    :wq(保存并退出)
    :q!(不保存并退出)
    :w!(管理员对只读文件强行保存)
    :x(保存退出)
    2.编辑模下式退出
    ZZ: (保存退出)
  • 移动光标
    1.逐字符移动
    h:向左
    l:向右
    j:向下
    k:向上
    5h:移动指定数目的字符,5h向左移动5个字符,在编辑模式下
    2.逐单词移动
    w:移至下一个单词的词首
    e:跳到当前单词的词尾,或下一个单词的词尾
    b:跳至当前或前一个单词的词首
    以上均支持前面加数字,表示跳n个单词
    3.以行为单位
    0:快速跳至行首(绝对行首)
    ^ : 行首(非空白字符行首)
    $:绝对行尾
    4.行间跳转
    G:5G直接跳转至5行,G最后1行
    末行模式下,直接给出行号,回车即可
  • 翻屏操作(编辑模式下)
    Ctrl+f:向文件尾部翻屏
    Ctrl+b:向上翻屏
    Ctrl+d:向下翻半屏
    Ctrl+u:向上翻半屏
  • 删除单个字符
    x:删除光标所在处的单个字符,7x删除7个字符
  • 删除命令d
    d命令与跳转命令组合使用,指定删除部分
    3dw:删除跳转符所指示范围得3个
    4de:
    dd:删除当前光标所在行
    4dd:删除当前光标所在行开始得4行
  • 末行模式下:
    10,20d:删除10到20行
    起始行,结尾行d
    .:表示当前行
    $:最后一行
    +n:向下的n行
  • 粘贴命令p
    p:如果删除的或复制的为整行内容,则粘贴至光标所在行的下方,如果删除的或复制的为非整行内容,则粘贴至光标所在字符后面。
    P :如果删除的或复制的为整行内容,则粘贴至光标所在行的前方,如果删除的或复制的为非整行内容,则粘贴至光标所在字符前面。
  • 复制命令 y
    用法同d命令
  • 修改:先删除内容,再转换为输入模式
    c:用法同d命令
  • 替换:r
    R:替换模式
  • 撤销编辑操作 u
    u:撤销前一次的编辑操作
    连续u命令可以撤销此前的n次编辑操作
    nu:撤销近n次编辑操作
    撤销最近一次操作:Ctrl+r
  • 重复前一次编辑操作
    .
  • 可视化模式
    v:按字符选取
    V:按矩形选取
  • 查找
    /PATTERN
    ?PATTERN
  • 查找并替换:在末行模式下使用s命令(sed)

你可能感兴趣的:(2018-09-24 vim命令详解)