linux中修改文件常用vim命令

个人博客地址: https://note.raokun.top
拥抱ChatGPT,国内访问网站:https://www.playchat.top

按键 作用 含义
i 在当前字符前插入 (记忆:insert)
I 在光标所在行的行首插入
a 在当前字符后插入 (记忆:after insert)
A 在光标所在行的行尾插入
o 在当前的下一行插入
O 在当前的上一行插入
s 删除光标所指向字符再插入 类似覆盖替换操作(记忆:switch)
S 删除光标所在行再插入 类似覆盖替换操作(记忆:switch)

vim底行模式的功能
在一般模式下,输入或者/即可进入命令模式

命令 作用 含义
:w 保存文件 (记忆:write)
:q 退出 Vim 未修改文件内容时用(记忆:quit)
:w! 强制保存 在 root 用户下,即使文件只读也可以完成保存
:q! 强制退出 修改不保存文件内容时用
:wq 保存并退出 (记忆:write quit)
:set nu 显示行号
:set nonu 不显示行号

vim三种模式常用命令

命令 含义 备注
yy 复制光标所在行 3yy表示复制3行,nyy表示复制n行
p 在光标所在行的下行开始粘贴 (记忆:小写在下)
P 在光标所在行的上行开始粘贴 (记忆:大写在上)
gg 光标跳转到首行首字符 ngg表示跳转到距离首行n行的位置
G 光标跳转到尾行首字母
^ 跳转到光标所在行首字母 (记忆:^表示头)
# 跳转到光标所在行尾字母 (记忆:$表示尾巴)
*dd或D 删除光标所在行
d^ 从光标位置删除至行首(不含光标) (记忆:d表示delete,^ 表示头,d^即表示删除到头)
d$ 从光标位置删除至行尾巴(含光标) (记忆:d表示delete,^ 表示尾,d^即表示删除到尾)
dgg 删除光标所在行以上所有行 (记忆:d表示delete,gg表示定位到首行首字母,即dgg表示删除到首行)
dG 删除光标所在行以下所有行 (记忆:d表示delete,G表示定位到尾行首字母,即dG表示删除到尾行)
x 删除光标后的一个字符 nx表示删除光标后n个字符,类似windows下的delete键(尝试了一下发现linux下delete键作用与x相同)
X 删除光标前的一个字符 nX表示删除光标后的n个字符类似windows下的backspace键盘(尝试了发现linux下的backspace表示光标左移)
u 撤销上次操作
n\u002B←/→键 向左或者向右移动n个字符