VIM命令

0 注意事项

  命令要区分大写

1 linux进入VIM模式

  vi filename

2 VI的三种模式

        2.1 输入模式(INSERT MODE): 用来输入文本

        2.2 命令模式(COMMAND MODE):用来输入各种操作命令(处理文本的命令,例如:复制、粘贴等)

        2.3 末行模式 :用于操作软件(例如:保存、退出软件等)

3 VI模式之间的切换

        3.1 命令模式 --- >  输入模式

快捷键 功能 备注
i 当前字符前面进入输入模式 insert
I 当前行前面进入输入模式
o 下一行插入,并进入输入模式 open(打开新的一行)
O 上一行插入,并进入输入模式
a 当前字符后面进入输入模式 append(追加)
A 当前行后面进入输入模式

 

        3.2 命令模式 --- >  末行模式

快捷键 功能 备注
: 进入末行模式 只能由命令模式进入

        3.3 输入/末行模式 --- >  命令模式

快捷键 功能 备注
ESC键 进入命令模式 输入模式和末行模式都是通过该方式进入命令模式

 

        3.4 模式转换图

                 

4 命令模式 

快捷键 功能 备注
h  
j  
k  
l  
dd 剪切一行  
dG 删除光标所在行以后的所有内容(包括光标所在行)  
dnG 从光标所在行删除到第n行  
G 光标定位到最后一行  
nG 光标定位到第n行  
gg 光标定位到第一行  
$ 光标定位到行尾  
0 光标定位到行首  
dw 删除一个单词 以空格或逗号区分单词
d^ 删除光标到行首的所有字符(不包含光标选中的字符) 只针对光标所在行
d$ 删除光标到行尾的所有字符(包含光标选中的字符)
D
r 替换光标选中的字符(输入替换字符后自动进入输入模式)  
R 替换光标选中的字符(一直停留在替换模式,直到点击ESC键)  
x 删除光标选中的字符  
nx 删除光标后面的连续n个字符(包含光标选中的字符)  
yy 复制光标所在行  
nyy 复制光标所在行之后的n行(包含光标所在行)  
p 粘贴到下一行  
P 粘贴到上一行  
np 粘贴n遍  
u 撤销上一次操作  

5 末行模式

快捷键 功能 备注
q! 不保存退出  
wq/x 保存并退出  
w 保存  
%s/src/target/g 将所有的src替换成target %:全篇内容   s:字符串
i.js/src/tarfet/g 将第i行到第j行的所有src替换成target
set number 显示行号  
set nonumber 隐藏行号  
n 将光标定位到第n行  
m,nd 删除第m行到第n行  
r 文件名 将(文件名)指定的文件中的内容导入到正在编辑的文件  
r !命令 将命令的执行结果导入到正在编辑的文件中

例如: r !date 

[将当前时间导入文件]

ab str1 str2 指定别名[系统重启后会失效]

在末行模式指定别名后,在输入模式中输入str1,会自动显示成str2

posted @   blue星空  阅读(166)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示