vim指令

发布于:2025-09-13 ⋅ 阅读:(16) ⋅ 点赞:(0)

vim指令


一、Vim 是什么?

Vim(Vi IMproved)是 Unix 系统上经典编辑器 vi 的增强版。它有以下特点:

  • 模态编辑器:这是 Vim 最独特也最强大的地方。它拥有不同的模式,在不同的模式下,相同的按键会执行不同的操作。
  • 纯文本界面:在终端中运行,无需图形界面,通过 SSH 管理远程服务器时必不可少。
  • 高度可定制:可以通过配置文件 .vimrc 和插件来扩展功能,打造专属的编辑环境。
  • 高效:一旦熟悉了按键操作,编辑文本的速度会非常快,手几乎不需要离开键盘主区。(不过很反常识那些键位)

在 CentOS 中,通常已经预装了 vim。如果没有,你可以使用我们之前学的 yum 来安装:

sudo yum install vim

二、Vim 的核心概念:模式

理解模式是学习 Vim 的钥匙。主要模式有:

  1. 普通模式 (Normal Mode)

    • 功能:这是 Vim 的默认模式和命令中心。用于移动光标、删除、复制、粘贴、撤销等操作。
    • 进入方式:在任何其他模式下,按 ESC 键。(我们用vim打开文件的时候默认的模式就是普通模式)
  2. 插入模式 (Insert Mode)

    • 功能:在这个模式下,你才可以像使用记事本一样输入和编辑文本
    • 进入方式:在普通模式下按以下任意键:
      • i:在光标当前位置前插入 (insert)
      • a:在光标当前位置后追加 (append)
      • o:在当前行的下方开启新行 (open new line)
      • I:在当前行的行首插入
      • A:在当前行的行尾插入
      • O:在当前行的上方开启新行
  3. 底行模式 (Command-Line Mode)

    • 功能:用于执行保存、退出、搜索替换等高级命令。
    • 进入方式:在普通模式下按 :(冒号)。
  4. 可视模式 (Visual Mode)

    • 功能:类似于用鼠标选中文本,用于高亮选择文本块并进行操作。
    • 进入方式:在普通模式下按 v(字符可视)或 V(行可视)。

三、启动、保存和退出(最最最重要的第一步)

这是新手使用 Vim 遇到的第一个坎。

操作 命令 解释
启动 Vim vim filename 打开或新建一个文件
保存文件 :w 写入 (write)
退出 Vim :q 退出 (quit)
保存并退出 :wq:xZZ 最常用的退出方式
强制退出(不保存) :q! 放弃所有修改,强行退出
另存为 :w new_filename 将当前文件另存为一个新文件

记忆技巧:在底行模式下,命令后的 ! 通常表示“强制”执行。


四、基本移动和编辑(普通模式下的核心操作)

在普通模式下,你才能高效地移动和编辑。

1. 光标移动
  • 基本移动
    • h (左), j (下), k (上), l (右) — 代替方向键(方向键当然也可以用)。
  • 单词移动
    • w - 移动到下一个单词的词首
    • b - 移动到上一个单词的词首
    • e - 移动到下一个单词的词尾
  • 行内移动
    • 0 (零) - 移动到行首
    • $ - 移动到行尾
    • ^ - 移动到行首第一个非空白字符
  • 屏幕移动
    • gg - 跳到文件第一行
    • G - 跳到文件最后一行
    • :n - 跳到第 n 行(例如 :55 跳转到第 55 行)
    • Ctrl + f - 向下翻页 (forward)
    • Ctrl + b - 向上翻页 (backward)
2. 文本编辑
  • 删除
    • x - 删除光标下的字符
    • dw - 删除一个单词 (delete word)
    • dd - 删除整行 (非常常用)
    • d$D - 删除从光标到行尾
  • 复制( Yank )与粘贴
    • yy - 复制整行 (yank line)
    • yw - 复制一个单词
    • p - 在光标粘贴 (paste)
    • P - 在光标粘贴
  • 撤销与重做
    • u - 撤销 (undo) 上一次操作
    • Ctrl + r - 重做 (redo),即撤销掉撤销操作

Vim 的哲学:操作符 + 动作
你会发现编辑命令是组合的:d (删除操作符) + d (动作,在这里代表当前行) = dd (删除当前行)。
同理:d + w = 删除一个单词;y + y = 复制一行。


五、高级功能与实用技巧

  1. 搜索与替换(在底行模式下)

    • 搜索:在普通模式下按 /,然后输入关键词,按回车。按 n 跳转到下一个匹配项,N 跳转到上一个。
      • 例如:/hello
    • 替换
      • :%s/old/new/g - 将文件中所有的 old 替换new
        • % 表示整个文件范围。
        • s 表示替换 (substitute)。
        • g 表示全局(一行内所有匹配项),如果没有 g 则只替换一行中的第一个匹配项。
      • :10,20s/old/new/g - 只替换第 10 行到第 20 行之间的内容。
  2. 显示行号

    • :set number:set nu - 显示行号
    • :set nonumber:set nonu - 隐藏行号
    • 可以将 set number 写入 ~/.vimrc 配置文件使其永久生效。
  3. 复制多行/删除多行

    • 5yy - 复制从光标处开始的 5 行
    • 5dd - 删除从光标处开始的 5 行

六、学习路径和建议

  1. 不要死记硬背:打开一个测试文件(如 vim test.txt),跟着指令一步步练习。
  2. 遵循学习曲线
    • 第一阶段:学会 i 进入插入模式,输入文字,然后 ESC 回到普通模式,再 :wq 保存退出。
    • 第二阶段:熟练使用 h, j, k, l 移动,dd, yy, p 进行编辑,u 撤销。
    • 第三阶段:掌握单词移动(w, b, e)、搜索(/)、替换(:s)。
  3. 玩游戏学习:在终端中输入 vimtutor 并回车。这是 Vim 自带的一个交互式教程。
  4. 个人看法:喜欢就练。不习惯还是用Windows的编译器吧,反正我是不太喜欢用Linux的编辑器。在Windows上写好,然后传到Linux系统里就好了。

七、vim的配置

说实在的,我感觉vim怎么配置都不如vs好用。大家可以注意到,vim没配置好是很难用的,什么功能都没有。这个大家可以上网搜一下vim的配置,网上有很多很多,如果喜欢用vim编辑的,那你可以好好折腾。

八、修改sudoers文件

在这里插入图片描述


在这里插入图片描述

总结:Vim 极简备忘录(新手必备)

任务 命令
打开文件 vim filename
保存 :w
退出 :q
保存并退出 :wq
强制退出不保存 :q!
进入插入模式 i (插入), a (追加), o (新行)
返回普通模式 ESC
删除一行 dd
复制一行 yy
粘贴 p
撤销 u
搜索 /keyword 然后按 n/N
显示行号 :set nu

网站公告

今日签到

点亮在社区的每一天
去签到