三种模式:

  1. 命令模式

    在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(删除行,复制行,移动光标,粘贴等等

  2. 编辑模式(输入模式)

    在该模式下可以对文件的内容进行编辑

  3. 末行模式

    可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出、撤销、高亮

命令模式

  1. 打开traingfile1.py,并且定位到第9行

    1
    vim +9 training1.py
  2. 打开traingfile1.py,并且对redis单词高亮显示

    1
    vim +/redis training1.py
  3. 切换到行首shift + 6(也就是输入^)

  4. 切换到行尾shift + 4(也就是输入$)

    这两个其实就是正则表达式里行首(^)和行尾($)

  5. ddD的区别:

    1. dd是删除后下面行会上移
    2. D是删除后下面喊不会上移(当前行就变成空白行)
  6. 恢复 : ctrl + r (取消之前的撤销操作)

  7. 定位到第16行 : 16G

  8. 同理还有16l:右移16个单词

末行模式

  1. :8跳转到第8行

  2. :w保存

  3. :w 路径另存为

  4. :!ls 调用vim外部的命令(这里是ls,也可以使用rm,cd等等)

  5. :nohl取消高亮(no high light)

  6. :s/old_str/new_str : 替换光标所在行的第一处符合条件的内容
    (光标所在行没有old_str则替换失败)

  7. :s/old_str/new_str/g : 替换光标所在行的全部符合条件的内容 (g表示global)

  8. :%s/old_str/new_str : 整个文档中每行第一个符合条件的内容

  9. :%s/old_str/new_str/g : 整个文档的全部替换

    简单来讲:

    • %表示整个文档
    • g表示global

编辑模式

  1. i : 在光标所在字符之前插入
  2. a : 在光标所在字符之后插入
  3. o : 新建一行插入
  4. I : 跳转到行首插入
  5. A : 跳转到行尾插入
  6. S : 删除光标所在行后插入

hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhllllllllllllllll