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的操作靠的是肌肉记忆,把本文中的掌握住基本就够了。

相关推荐
瑞克-桑切斯5 分钟前
docker Harbor 单机部署手册
大数据·运维·elasticsearch·docker·容器
奶茶树12 分钟前
【Linux】环境开发工具(vim,gcc,g++,Makefile)
linux·运维·vim
机 _ 长40 分钟前
05 智算运维|8 张卡怎么才算「捆成一张」:NCCL 实测与拓扑
运维·人工智能·算法·智算运维
andxe2 小时前
工业级 PoE 交换机选型指南:破解边缘部署四大核心难题
运维·网络·安全·光通信·交换机
Decay__2 小时前
14_MySQL 高可用与容灾架构 —— MGR / InnoDB Cluster / Keepalived+VIP / 双主 / 读写分离 / 两地三中心
运维·数据库·sql·mysql·架构
木子欢儿4 小时前
国内 macOS/Linux 安装 rust
linux·运维·服务器·macos·rust
say_fall4 小时前
【Linux网络编程】计算机网络基础:局域网与广域网、OSI七层模型与TCP/IP五层模型、封装解包与MAC/IP地址、端口号与socket编程接口
linux·网络·tcp/ip·计算机网络·信息与通信
迪菲赫尔曼4 小时前
【基础篇 26】第一次在服务器完成训练:准备数据、断线继续、检查成果与备份
运维·服务器·人工智能·机器学习·计算机视觉
进击的荆棘4 小时前
Linux系统——线程同步与互斥
linux·运维·服务器·策略模式·同步·互斥·posix
橙橙笔记4 小时前
QT的学习第四部分
linux·qt·学习·音视频