一、vim的三种模式以及作用
- 命令模式:控制光标移动,可对文本进行删除、复制、粘贴
- 末行模式:保存、推出与设置编辑环境
- 编辑模式:正常的文本录入
二、命令模式常用快捷键
- dd 删除(剪切)光标所在的整行
- ndd n为数字,删除(剪切)从光标处开始的n行
- dG 删除光标所在行到文件末尾内容
- D 删除光标所在处到尾行内容
- yy 复制光标所在的整行
- nyy n为数字,复制从光标处开始的n行
- p 将之前删除(dd)或者复制(yy)过的粘贴到光标后
- /字符串 在文本中从上至下搜索该字符串
- ?字符串 在文本中从上至下搜索该字符串
- n 在搜索字符串后,显示搜索命令定位到的下个字符串
- N 在搜索字符串后,显示搜索命令定位到的上个字符串
- u 撤销上一步操作
- r 替换光标所在处的内容
- R 替换光标所在处开始往后的内容
三、末行模式常用命令
- w 保存
- w /root/test1 另存为在/root下名为test1
- q 推出
- q! 强制退出
- wq! 强制保存退出
- set nu 显示行号
- set nonu 不显示行号
- set ic 使用"/"搜索时不区分大小写
- %s/ole/new/g 全文替换指定字符串,将ole替换为new
- n1,n2s/ole/new/g 在n1行到n2行范围内替换指定字符串,将ole替换为new
四、行内移动
- $ 移动到行尾
- 0 移动到行首
五、末行模式下的vim的特殊用法
一、将其他内容导入到现在的光标所在处
r /root/readme
二、不退出的情况下,执行一些命令
直接在末行模式下输入"!"并在后面加命令即可
三、导入命令执行结果
r !命令
四、使用map自定义快捷键
map Ctrl+v+自定义使用的一个键 你想要的操作
如下,设置成功后直接用Ctrl+自定义键就可以进行快捷键操作了
map ^H i#<ESC>
五、自动替换
ab 字符串1 字符串2
这样,在输入字符串1后回车,就会将字符串1替换为字符串2了
六、自定义快捷键的配置文件
在用户的家目录下,配置文件名为".vimrc",我们可以将想要设置的自定义快捷键直接写入到这个配置文件内就会永久生效了
[root@izic91l34q6kviz ~]# vim /root/.vimrc
map Ctrl+v+h I#<ESC>
ab qyq choudd@126.com