linux中VI命令的详细解释

一、基本操作
操作 命令 功能描述
启动Vi vi filename 打开指定文件,如果文件不存在则新建。
退出Vi :q 退出Vi,若文件未修改则直接退出。
:q! 强制退出,放弃所有修改。
:wq 或 :x 保存文件并退出。
二、Vi的基本模式
模式 描述
命令模式(Command Mode) 默认模式,用于执行命令如删除、复制、查找等。
输入模式(Insert Mode) 用于输入文本,通过按 i, a, o 等键进入。
末行模式(Last Line Mode) 输入 : 后进入,用于执行保存、退出、查找替换等命令。
三、Vi的命令模式操作
操作类别 命令 功能描述
光标移动 h 向左移动一个字符。
j 向下移动一行。
k 向上移动一行。
l 向右移动一个字符。
w 移动到下一个单词的开头。
b 移动到上一个单词的开头。
e 移动到当前单词的末尾。
0 移动到当前行的开头。
$ 移动到当前行的末尾。
gg 移动到文件的开头。
G 移动到文件的末尾。
nG 移动到第 n 行。
删除操作 x 删除光标所在处的一个字符。
dd 删除光标所在行。
d$ 删除从光标开始到行末的内容。
d0 删除从光标开始到行首的内容。
ndd 删除当前行及下面 n-1 行。
复制和粘贴 yy 复制当前行。
yny 复制当前行及下面 n-1 行。
p 在光标所在行下方粘贴。
P 在光标所在行上方粘贴。
撤销和重做 u 撤销上一次操作。
Ctrl + r 重做上一次被撤销的操作。
行号和文件信息 :number 显示当前行号。
:set number 显示所有行号。
Ctrl + g 显示当前光标所在的行号和文件信息。

四、Vi的输入模式操作
命令 功能描述
i 在光标所在位置前插入文本。
a 在光标所在位置后插入文本。
o 在光标所在行下方插入新行。
O 在光标所在行上方插入新行。
五、Vi的末行模式操作
操作类别 命令 功能描述
查找 :/pattern 从光标位置开始向下查找 pattern 模式,不包含此行。
:?pattern 从光标位置开始向上查找 pattern 模式,不包含此行。
替换 :s/旧文本/新文本/g 在当前行中将旧文本替换为新文本。
:%s/旧文本/新文本/g 在整个文件中将旧文本替换为新文本。
:s/旧文本/新文本/gc 在整个文件中将旧文本替换为新文本,并逐行确认。
打开和保存文件 :e filename 打开另一个文件进行编辑。
:w filename 将当前文件保存为另一个文件。
:x filename 保存当前文件并退出。
分割窗口 :split filename 水平分割窗口并打开另一个文件。
:vsplit filename 垂直分割窗口并打开另一个文件。
其他 :help command 显示关于命令的帮助信息。
:set option 设置编辑器选项,如 :set ignorecase、:set autoindent 等。
六、Vi的可视化模式
命令 功能描述
v 按字符选择。
V 按行选择。
Ctrl + v 按块选择。
七、高级操作
操作类别 命令 功能描述
宏 qa 开始录制宏,a 是宏的名称,A-Z 可以记录多个宏。
q 停止录制宏。
@a 执行宏 a。
快速编辑 Ctrl + f 向前翻页。
Ctrl + b 向后翻页。
:n 跳转到下一个文件(用于多文件编辑)。
:N 跳转到上一个文件。
自动补全 Ctrl + x、Ctrl + e 在输入模式下启用自动补全功能。
Ctrl + n 在输入模式下根据上下文补全单词。
Ctrl + p 在输入模式下根据上下文补全单词。

八、Vi的插件和扩展
插件名称 功能描述
Vundle Vi 的插件管理器。
YouCompleteMe 代码补全插件。
Syntastic 语法检查插件。
NERDTree 文件树浏览插件。

快捷命令总结

操作 命令 功能描述
连续选中 按字符:v 按字符选择。
按行:V 按行选择。
按块:Ctrl + v 按块选择。
跳到最后一行 G 跳到文件末尾。
:$ 跳到文件末尾。
相关推荐
GeW18 分钟前
高端化走到深处,是数据库和Linux的事
linux
程序员初一1 小时前
Linux 远程桌面有四种做法
linux·ssh
爱吃奥利奥_wen2 小时前
SQL Server 基础语法详解:从建库建表到约束与增删改查
服务器·数据库·oracle
程序开发阿元2 小时前
1C1G 能跑什么:把留常驻服务和不留摆进一张内存表
linux·ssh
xbzb4 小时前
自定义 yum 软件源:Linux 上 createrepo,Windows 上纯 Python 也能造
linux·运维·windows·python·yum·createrepo
Android系统攻城狮4 小时前
Linux FFmpeg深度解析之avio_open调用流程与实战(三十八)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
独隅4 小时前
WebStorm Linux 版安装实战与核心效能展示
linux·ide·webstorm
瑞克-桑切斯6 小时前
ERP 企业生产管理系统部署手册
运维·docker·云原生·容器·eureka
江屿风6 小时前
【Git-组件】【Git入门:从文档灾难到版本掌控】流食般投喂
运维·笔记·git·组件·版本控制
我不会起名字3226 小时前
K8s 节点磁盘打满导致 Pod 被驱逐:4 类占用与回收顺序
运维·kubernetes·k8s·diskpressure·evicted