Vim的基础命令

移动光标

H (左) J (上) K (下) L (右)
$ 表示移动到光标所在行的行尾,
^ 表示移动到光标所在行的行首的第一个非空白字符。
0 表示移动到光标所在行的行首。
W 光标向前跳转一个单词
w 光标向前跳转一个单词
B 光标向后跳转一个单词
b 光标向后跳转一个单词
G 移动光标到文件最后一行开头
gg 移动光标到文件第一行开头
:set nu 显示行标

数字G 移动光标到指定行
数字gg 移动光标到指定行

保存退出

:w 保存文件
:wq 保存并退出
:q 退出
:q! 强制退出

帮助

:help 获取帮助信息,如我知道:s是替换文本,但是怎样使用这个命令呢?

输入:help :s命令来查询它的帮助信息:

于是我就知道可以用:s/"gg"/gg/ 来替换文本。

执行外部命令

:! 执行外部命令,如ls ,pwd
:.! 执行外部命令,并将结果插入到光标所在行

删除

数字+X 删除光标左边的【数字】个字符,不加数字,就是删除一个字符
数字+x 删除光标右边的【数字】个字符,不加数字,就是删除一个字符
数字+C 删除光标所在行开始的【数字】行,不带数字就是一行,并可以马上开始输入新内容。
数字+c+$ 删除光标所在行开始的【数字】行,不带数字就是一行,并可以马上开始输入新内容。
数字+cc 删除光标所在行开始的【数字】行,不带数字就是一行,并可以马上开始输入新内容。
c+数字w 删除从光标开始到第【数字】个空格之间的字符,并可以马上开始输入内容。简单点记,就是改写【数字】个单词。如果没有带上数字,那就是一个单词。
数字+f+字符 直接将光标定位到光标右边 出现这个字符的第【数字】个上
数字+t+字符 直接光标定位到光标右边 出现这个字符的第【数字】个前面
数字+F+字符 直接光标定位到光标左边 出现这个字符的第【数字】个上
数字+T+字符 直接光标定位到光标左边出现这个字符的第【数字】个前面

( 移动光标到上一句
) 移动光标到下一句
{ 移动光标到上一段
} 移动光标到下一段

复制粘贴

数字+D 剪切 光标所在行开始【数字】行字符,不加数字,就是当前行
数字+d+$ 剪切 光标所在行开始【数字】行字符,不加数字,就是当前行
数字+dd 剪切 光标所在行开始【数字】行字符,不加数字,就是当前行
d+w 剪切光标所在位置开始到第一个空格结束的字符串,对英文来说可以简单点来理解:剪切一个单词。

数字+Y 复制 光标所在行开始【数字】行字符,不加数字,就是当前行
数字+y+$ 复制 光标所在行开始【数字】行字符,不加数字,就是当前行
数字+yy 复制光标所在行开始【数字】行字符,不加数字,就是当前行

P:Paste 的意思
P :粘贴
p:粘贴

查找

:/pattern 查找pattern
:?pattern 查找pattern
N : 上一个查找
n :下一下查找

选择

V 选择光标所在行
v 选择光标所在的字符
U 将字母变大写

撤销操作

u 撤销操作

换行

O 在光标所在行的顶部开一新行
o 在光标所在行的底部开一新行

插入

A 在光标前面插入字符
a 在光标后面插入字符

替换文本

:s/patten/replace/ 搜索符合的pattern用replace字符串替换
数字R 将光标定在要替换的文本开头,按大写R,开始输入替换的内容,内容会覆盖掉原来的字符,输入完成按Esc,如果有数字,则会重复【数字】次刚刚替换的文本。

数字r 将光标定在要替换的字符上,按r,开始输入替换的内容,内容会覆盖掉原来的字符,数字是多少就是覆盖多少个字符,输入完成按Esc,如果有数字,则会重复【数字】次刚刚替换的字符。

数字S 将光标所在行开始的【数字】行,直接删除掉,直接输入新的内容进行内容替换,其余没有删除掉的不受影响,如果没有带【数字】,就是一行。

数字s 将光标所在处开始的【数字】个字符,直接删除,直接输入内容进行替换,其余没有删除掉的不受影响,如果没有带【数字】,就是一个字符。

打开文件

打开vim

c 复制代码
~$ vim

e: edit的意思
:e 文件名 在vim中打开一个文件来编辑

相关推荐
克莱因3581 小时前
Linux CentOS7 进程基础知识
linux·运维·服务器
我爱学习好爱好爱4 小时前
Ansible 常用模块详解:yum、service/systemd、copy实战
linux·服务器·ansible
papaofdoudou5 小时前
LINUX VFIO被IOMMUFD取代
linux·运维·服务器
平生不喜凡桃李5 小时前
浅谈 Linux 中 namespace 相关系统调用
java·linux·服务器
YMWM_6 小时前
【问题】thor上的cubLas
linux·python·thor
杨云龙UP7 小时前
mysqldump逻辑备份文件恢复总结:全库恢复、单库恢复,一篇讲明白
linux·运维·服务器·数据库·mysql·adb
舰长1157 小时前
linux系统服务器加固1、中风险 未设置登录失败处理功能和登录连接超时处理功能。2、中风险 未限制默认账户的访问权限。3、中风险 未实现管理用户的权限分离。
linux·运维·服务器
FateRing7 小时前
vscode插件fail to fecth
ide·vscode·编辑器
mounter6257 小时前
Linux 7.0 重磅更新:详解 nullfs 如何重塑根文件系统挂载与内核线程隔离
linux·运维·服务器·kernel
色空大师8 小时前
【网站搭建实操(一)环境部署】
java·linux·数据库·mysql·网站搭建