一、vi编辑器简介
vim是一个全屏幕纯文本编辑器,是vi编辑器的增强版,可以利用别名让输入vi命令的时候执行vim编辑器,例如:
alias vi='vim'
这样定义的别名是临时生效的,如果想永久生效,就需要更改配置文件~/.bashrc
二、vim的基本使用
1、vim的工作模式
vim工作在三种模式之下:
命令模式:是主要使用快捷键的模式,从命令模式进入输入模式,有以下几种方式:
快捷键 | 作用 |
---|---|
a | 在光标所在字符后插入 |
A | 在光标所在行尾插入 |
i | 在光标所在字符前插入 |
I | 在光标所在行行首插入 |
o | 在光标下插入新行 |
O | 在光标所在行上一行插入新行 |
R | 替换光标所在处内容 |
从命令模式进入编辑模式只需要输入:即可
输入模式:主要用于文本编辑,和记事本类似,输入数据就好,此模式下按ESC键返回命令模式
编辑模式:也称为末行模式,用于保存和退出vim编辑器
2、编辑模式的参数设置
设置参数 | 含义 |
---|---|
:set nu / :set nonu | 是否显示行号 |
:syntax on / :syntax off | 是否依据语法显示相关颜色帮助 |
:set hlsearch / :set nohlsearch | 设置是否将查找字符串高亮显示 |
:set ruler / :set noruler | 设置是否显示右下角的状态栏 |
:set showmode / :set noshowmode | 设置是否在左下角显示如“–INSERT–”之类的状态栏 |
:set list / :set nolist | 设置是否显示隐藏字符(Tab键使用“^I”表示,回车符用“$”表示),set list类似于 cat -A 文件名 |
vim支持更多的设置参数,可以通过:set all查看。
这样设置参数都只是临时生效,一旦关闭文件再打开,就需要重新设置。如果想永久生效,需要手工建立vim的配置文件“~/.vimrc”,把你需要的参数直接写入该配置文件即可。
Tip
:Windows下的回车符在Linux中会显示为“^M$”,而不是“$”。这样会导致Windows下编辑的程序脚本,无法在Linux中执行。这时可以通过命令dos2unix,把Windows格式转为Linux格式,反过来unix2dos命令就是把Linux格式转为Windows格式。这两个命令默认都没有安装,需要手工安装。
3、查找
4、替换:s表示替换
示例1:①将前10行的old字符串替换为new;②将全文中的old字符串替换为new
示例2:批量注释和批量取消注释,使用了正则匹配
在C、PHP、Java中的注释使用//:
三、vim的使用技巧
1、在vim中导入其他文件内容或命令结果
a、导入其他文件的内容:注意文件名要使用绝对路径
b、在vim中执行系统命令
这里只是在vim中执行系统命令,并不把系统命令的结果写入到文件中。主要用于在文件编辑时查看系统信息,如时间。
c、导入命令结果
2、设定快捷键:这些设置可以写在~/.vimrc配置文件中
常用的自定义快捷键如下:
注意
:^P快捷键不能手工输入,需要执行ctrl + V +P来定义,或ctrl+V,然后ctrl+P。^B快捷键也是一样。
3、字符替换:这里的字符替换是指当输入内容为源字符的时候会自动替换为后面的替换字符,这样我们就可以在写敲很少的内容时出现很多的内容
示例:源字符不宜设置的太短,否则会影响输入
4、多文件打开
在vim中可以同时打开两个文件,方式如下:
这样可以同时打开两个文件,方便操作。如果是“-o”上下打开两个文件,可以通过ctrl+w,再按上下箭头的方式在两个文件之间切换;如果是“-O”左右打开两个文件,可以通过先按ctrl+w,再按左右箭头的方式切换两个文件。
四、常用快捷键
以下快捷键都是在命令模式下使用的,而非输入模式。
操作 | 快捷键 |
---|---|
删除光标所在当前行 | dd |
删除光标所在及其后多少行 | d数字d |
撤销上一步操作 | u |
复制光标所在行内容 | yy |
复制光标所在及其后几行 | y数字y |
粘贴 | p,若是粘贴4或5中复制的内容,会从当前光标所在行的下一行开始粘贴 |
删除光标后的一个字母 | x,相当于del |
删除光标前的一个字母 | X,相当于Backspace |
删除一个单词 | dw |
复制一个单词 | yw |
移动到行首 | shift+^ |
移动到行尾 | shift+$ |
移动到页头 | 数字1 + shift + g,需要注意按键顺序 |
移动到页尾 | shift + g |
移动到目标行 | 数字n + shift + g |