Linux—vim编辑器详细介绍
vim编辑器
一、vi介绍
vi编辑器是所有Unix及Linux系统下标椎的编辑器,在Linux任何版本中vi编辑器是完全相同的,因此可以在其他任何Linux平台使用,vi和vim都是Linux中的编辑器,vim是vi的升级版,需要重点学习的是vim中的光标移动、模式切换、删除、查找替换、复制、粘切、撤销等命令
二、vim的三种模式
Vim的三种模式:命令模式、编辑模式、尾行模式
命令模式:该模式下不能对文件直接编辑,可以输入快捷键进行一些操作(删除行、复制行、移动光标、粘切等)【打开文件时默认进入的模式】
编辑模式:该模式下对文件内容进行操作
末行模式:可以在末行输入命令对文件进行操作(搜索、替换、保存、退出、撤销、高亮等)
常用的打开文件的方式:
-
vim 文件路径 作用:打开指定文件
-
vim +数字 文件路径 作用:打开指定文件,并且将光标移动到指定行
-
vim +/关键词 文件路径 作用:打开指定文件,并且高亮显示关键词
-
vim 文件路径1 文件路径2 文件路径3 作用:打开多个文件
1. 命令模式
打开文件时的默认模式
-
光标移动:
- 光标移动到行首:shift+6 即:^
- 光标移动到行尾:shift+4 即:$
- 光标移动到首行:gg
- 光标移动到末行:G
- 翻屏:向上:Ctrl+b 向下:Ctrl+f
-
复制操作:
- 复制光标所在行:yy 在想要粘切的位置按p键粘切
- 以光标所在行为准,向下复制指定行数:数字 yy
- 可是块复制:Ctrl+v 然后利用方向键进行选择,从而可以利用yy和p键进行复制粘切
-
剪切/删除
- 剪切或删除光标所在行:dd
- 剪切或删除光标所在行为准(包含当前行),向下删除/剪切指定行:数字 dd
-
撤销
- 命令: 输入u
- 恢复撤销:Ctrl+r
-
光标的移动
- 移动到指定行:数字+G
- 以当前光标为准向指定方向移动n行:数字+方向键
三、模式切换
打开终端默认为命令模式,输入英文冒号进入末行模式,按esc退出末行模式;按i、a等进入编辑模式,按esc退出编辑模式进入命令模式
四、末行模式
由命令模式进入按 : ,按esc退出
-
保存文件:“w”
-
保存退出"wq"或"x"
-
强制退出:在命令后加"!"
-
搜索:"/关键词" 在搜索结果中切换上/下:N/n
-
替换
- " : s/搜索的关键词/需要替换的内容" (替换光标所在行的第一处符合条件的内容)
- “: s/搜索的关键词/需要替换的内容/g” (替换光标所在行符合条件的内容)
- “:%s/搜索的关键词/需要替换的内容/g” (替换全部文档符合条件的内容)
-
显式行号:":set nu"
-
取消行号:“set nonu”
-
打开多个文件
- 命令:vim 路径1 路径2
- 在打开的文件之间进行切换:":files"查看已打开的文件
- 切换文件:":open 文件名"
五、编辑模式
- i:在光标所在字符前开始插入
- a:在光标所在字符后开始插入
六、实用功能
- 关闭代码着色:":syntax off"
- vim中计算器使用:编辑模式中按"Ctrl+R",然后输入"=",此时光标变到最后一行,输入需要计算的内容按回车
1. vim的配置
- 个人配置文件(~/.vimrc,如果没有则自己创建)
- 全局配置文件(/etc/vimrc)
- 在文件中加入需要的配置(例如:配置行号则需要在文件中加set nu)
2. 解决异常退出问题
异常退出是在编辑文件后没有正常保存退出,而是遇到突然关闭终端或断电导致的问题
- 解决方式:删除交换文件如上图所提示的信息
3. 别名机制
通过别名机制可以创建自己的命令
别名机制依靠别名映射文件:~/.bashrc
- 例如图中的映射关系,输入ls命令则相当于’ls --color=auto’命令,即通过映射定义规则可定义自己习惯的命令
- 其他内容可关注我的个人博客!不将就