linux 中 Vi 和 Vim 的使用

Vi (Visual Interface)是 Linux下基于Shell 的文本编辑器,Vim (Visual Interface iMproved)是 Vi的增强版本,扩展了很多功能,比如对程序源文件的语法高亮。不管是 Vi 还是 Vim,我们习惯上都管它叫 Vi,但实际上用的更多的是 Vim。

在你的系统里用 alias命令看一下 vi,可以发现用到的其实是vim。

|-----|----------------------------------------|
| 1 2 | $``alias vi alias vi``=``'vim' |

所有的Linux系统里会内建 Vi,它就像 Windows里的记事本,我们一般修改系统的配置文件都要用到它,所以虽然第一次用会可能不太习惯,但是我们还是要学会使用它。

用 Vi 打开或者新建一个文件只需要输入命令 vi +文件名就可以了,然后就进入了Vi的界面。比如用 Vi打开一个hello.c的文件,命令如下:

|---|----------------|
| 1 | vi hello.c |

因为 Vi 是完全基于 Shell 的,它和 Windows下的编辑器不同,分为三种模式:

对于三种不同模式之间的切换,我做了一张图方便大家记忆,可以看到命令模式是枢纽,在插入模式和末行模式之间切换需要先进入命令模式。

一、命令模式

启动 Vi 后会默认进入命令模式。在命令模式下可以看到最下面有一些信息,比如 "hello.c" 是我们当前编辑的文件名,7L 表示共有 7 行,112 C表示共有 112 个字符。1,1 表示当前光标的位置。

在命令模式下,可以完成的功能主要有:

1、光标移动

2、复制、粘贴、删除

3、查找

4、撤消

二、插入模式

插入模式就是我们正常输入或者修改文件内容的模式了,切换方法有三种:

1、输入 i : 在当前光标输入

2、输入a:在当前光标后输入

3、输入o:在下方插入新的一行

在插入模式下,界面最下方会提示 -- INSERT --

三、末行模式

在命令模式下输入 ":" 可以切换到末行模式,在末行模式下,界面最下方有":"提示,这里可以输入我们的命令。

Vi 可以支持的命令非常的多,这里列出几个比较常用的供大家参考:

1、 替换

如果/g 和 /c 要合并使用,可以写成 /gc

2、保存/退出

3、其他命令

Vi 看起来比较复杂,支持的命令也很多,其实最常用的也就几个。Vi的操作靠的是肌肉记忆,把本文中的掌握住基本就够了。

相关推荐
l1t1 小时前
用split命令恢复被wget -c命令误追加的zip压缩包
linux
随性而行3601 小时前
微信API接口与AI自动化:开发者的实现思路
运维·服务器·开发语言·人工智能·微信·自动化
辉灰笔记2 小时前
MySQL8 意外关机/误移data目录导致服务启动失败 PID报错/权限报错 修复文档
linux·数据库·mysql·centos
胖兔纸23 小时前
OpenStack 1.7.2 & Ceph 9.2.1 运维命令
运维·ceph·openstack
不会C语言的男孩3 小时前
Docker 在嵌入式设备中的常用玩法
运维·docker·容器
ylscode3 小时前
CVE-2026-31694 漏洞深度分析:Linux 内核 FUSE 组件存在本地提权风险,普通用户可直取 root 权限
linux·运维·服务器
智脑API平台4 小时前
Codex CLI 怎么用 .env 配置 API Key?本地项目和自动化脚本接入教程
运维·自动化
无足鸟ICT5 小时前
【RHCA+】bash命令
linux·开发语言·bash
weixin_307779135 小时前
Linux下Docker Compose里运行的MySQL数据库故障诊断Shell脚本
linux·运维·mysql·docker·自动化
小生不才yz5 小时前
Shell脚本精读 · S14-02 | 脚本模板:从 20 行工具到可维护项目
linux