3. vim上手

在Ubuntu下使用Vim是Linux系统中非常基础且重要的技能,Vim是一款高效的文本编辑器,以"模式化操作"为核心,初期可能有点难上手,但熟练后会极大提升编辑效率。以下从安装、基础模式、核心操作、配置四个方面逐步讲解:

一、安装Vim

Ubuntu默认可能预装了Vim,若未安装,打开终端(Ctrl+Alt+T)执行以下命令:

bash 复制代码
sudo apt update  # 更新软件源
sudo apt install vim  # 安装Vim

二、Vim的三种核心模式(必须掌握)

Vim的核心是"模式化",不同模式下按键功能完全不同,新手最容易因为"不知道当前在什么模式"而 confusion,先牢记这三种模式:

模式 作用 进入方式 退出方式(回到普通模式)
普通模式 导航、操作文本(删除、复制、粘贴等) 启动Vim后默认进入 ESC 键(无论在什么模式)
插入模式 输入/编辑文本 在普通模式下按 i/a/o 等键 ESC
命令行模式 执行保存、退出、查找等命令 在普通模式下按 :(冒号) ESC 键或执行命令后自动退出

三、基础操作实战

以"创建并编辑一个文本文件"为例,一步步演示:

1. 启动Vim并打开文件

终端中输入以下命令,打开(或创建)一个名为 test.txt 的文件:

bash 复制代码
vim test.txt  # 若文件不存在,会在保存时创建;若存在,直接打开

启动后默认进入普通模式,此时键盘输入不会直接写入文本,而是执行导航或操作命令。

2. 进入插入模式(输入文本)

在普通模式下,按以下键进入插入模式(根据需要选择):

  • i:在光标当前位置前插入(最常用)
  • a:在光标当前位置后插入
  • o:在光标下方新开一行插入
  • I:在当前行开头插入(大写I)
  • A:在当前行末尾插入(大写A)
  • O:在光标上方新开一行插入(大写O)

进入插入模式后,左下角会显示 -- INSERT --,此时可以像记事本一样正常输入文本(例如输入"Hello Vim!")。

3. 回到普通模式(操作文本)

输入完成后,按 ESC 键回到普通模式(左下角 -- INSERT -- 消失),此时可以对文本进行导航和编辑操作。

(1)光标导航(普通模式下)
按键 功能 进阶用法
h 向左移动1个字符 数字+h:向左移动n个字符(如5h左移5格)
j 向下移动1行(常用) 数字+j:向下移动n行(如3j下移3行)
k 向上移动1行(常用) 数字+k:向上移动n行(如2k上移2行)
l 向右移动1个字符 数字+l:向右移动n个字符(如4l右移4格)
gg 直接跳到文件首行 -
G 直接跳到文件末行 数字+G:跳到第n行(如10G跳到第10行)
^ 跳到当前行开头(非空格) -
$ 跳到当前行末尾 -
(2)删除文本(普通模式下)
按键 功能
x 删除光标所在位置的字符
dd 删除光标所在行(常用)
数字+dd 删除从当前行开始的n行(如3dd删除3行)
d^ 删除从光标到当前行开头的内容
d$ 删除从光标到当前行末尾的内容
(3)复制与粘贴(普通模式下)
按键 功能
yy 复制光标所在行(常用)
数字+yy 复制从当前行开始的n行(如2yy复制2行)
p 在光标下方粘贴复制的内容(常用)
P 在光标上方粘贴复制的内容
(4)撤销与重做(普通模式下)
按键 功能
u 撤销上一步操作(常用)
Ctrl+r 重做被撤销的操作(反撤销)
4. 命令行模式(保存、退出、查找等)

在普通模式下按 : 进入命令行模式(光标会跳到终端底部),输入以下命令后按回车执行:

命令 功能
:w 保存当前文件(不退出)
:q 退出Vim(若未保存会提示错误)
:wq 保存并退出(常用,等价于 ZZ 快捷键)
:q! 强制退出,不保存修改(放弃编辑)
:set number 显示行号(临时生效)
:set nonumber 隐藏行号
/关键词 从当前位置向下查找"关键词"(按 n 跳到下一个,N 跳到上一个)
:%s/旧内容/新内容/g 全局替换:将文件中所有"旧内容"替换为"新内容"(% 表示全部行,g 表示一行内所有匹配)
5. 完整流程示例
  1. 终端输入 vim test.txt 打开文件(普通模式)

  2. i 进入插入模式,输入:

    复制代码
    Hello Vim!
    这是我的第一个Vim文件。
  3. ESC 回到普通模式,按 gg 跳到首行,按 dd 删除第一行

  4. i 重新进入插入模式,补全为:

    复制代码
    学习Vim很有用!
    这是我的第一个Vim文件。
  5. ESC 回到普通模式,按 : 进入命令行模式,输入 :wq 保存退出

四、常用配置(让Vim更好用)

默认Vim配置较简单,可通过 ~/.vimrc 文件自定义(该文件是Vim的用户配置文件,若不存在则创建)。

配置步骤:
  1. 终端输入 vim ~/.vimrc 打开配置文件

  2. i 进入插入模式,添加以下常用配置:

    vim 复制代码
    set number          " 显示行号
    set autoindent      " 自动缩进(新行与上一行对齐)
    set tabstop=4       " Tab键宽度为4个空格
    set shiftwidth=4    " 自动缩进时的宽度为4个空格
    set expandtab       " 将Tab键转换为空格(避免不同编辑器Tab显示不一致)
    set cursorline      " 高亮当前行(方便定位)
    set encoding=utf-8  " 支持UTF-8编码(显示中文)
  3. ESC 回到普通模式,输入 :wq 保存退出,下次启动Vim时配置自动生效。

五、新手常见问题

  1. 无法退出Vim :无论在什么模式,先按 ESC 回到普通模式,再按 :q!(放弃)或 :wq(保存)。
  2. 输入的字符变成了命令 :因为处于普通模式,按 i 进入插入模式即可输入文本。
  3. 中文乱码 :在 ~/.vimrc 中添加 set encoding=utf-8 即可解决。
相关推荐
prettyxian8 小时前
【linux】基础开发工具(2)vim
linux·vim
西岭千秋雪_8 小时前
Zookeeper监听机制
java·linux·服务器·spring·zookeeper
爱奥尼欧9 小时前
【Linux笔记】网络部分——网络层IP协议
linux·网络·笔记
埃伊蟹黄面9 小时前
告别手动编译:用Makefile自动化你的Linux项目
linux·服务器
Once_day9 小时前
Linux错误(7)接口处于Down状态不通告IPv6地址变更事件
linux·运维·服务器
任风雨9 小时前
15.1.2.linux常见操作用例
linux·服务器
YouEmbedded9 小时前
解码LVGL样式
linux·lvgl·lvgl样式
lifejump10 小时前
端口隔离技术的实验与验证(eNSP)
linux·服务器·网络
zzzsde10 小时前
【Linux】基础指令(4):基础指令&&热键&&shell运行原理
linux·运维·服务器