写在前面
编辑器之神--vim
vi
Vi
编辑器是所有 Unix
及 Linux
系统下标准的编辑器,类似于 windows
系统下的notepad
(记事本)编辑器,由于在Unix
及Linux
系统的任何版本,Vi
编辑器是完全相同的,因此可以在其他任何介绍vi的地方都能进一步了解它,Vi
也是Linux中最基本的文本编辑器.
vim模式的切换
可能图画的比较丑,我懂就好
vim的模式
vim
中大众认知的三种模式:
- 命令模式:在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(删除行,复制行,移动光标,粘贴等等
- 编辑模式:在该模式下可以对文件的内容进行编辑;
- 末行模式:可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出、撤销、高亮等等);
vim
打开文件的方式:
- vim 文件路径 作用:打开指定文件
- vim +数字 文件路径 作用:打开文件并且将光标跳转到指定的行首
- vim +/关键词 文件路径 作用:打开文件并将光标跳转至第一个出现关键词的地方
- vim 文件路径1 文件路径2 文件路径3 作用:同时打开多个文件
命令模式
光标移动
-
光标移动到行首
shift + 6(^) -
光标移动到行尾
shift + 4($) -
光标移动到首行
gg
-
光标移动到末行
G
-
翻屏
- 向上翻屏:按键
ctrl + b
或PgUp
- 向上翻屏:按键
ctrl + b
或PgUp
- 向上翻屏:按键
复制操作
-
复制光标所在行
yy -
以光标所在行为准(包含当前行),向下复制指定的行数
数字 yy -
可视化复制
ctrl + v(可视块)或V(可视行)或v(可视),然后按下↑↓←→方向键来选中需要复制的区块,按下y键进行复制 -
粘贴
p
剪切/删除
-
剪切/删除
dd 删除之后下一行上移
补充:严格意义上说是剪切命令,但是如果剪切了不粘贴就是删除的效果. -
剪切/删除光标所在行为准(包含当前行),向下删除/剪切指定的行
数字 dd -
剪切/删除光标所在的当前行之后的内容,但是删除之后下一行不上移
D(删除之后当前行会变成空白行) -
可视化删除
ctrl + v
(可视块)或V
(可视行)或v
(可视),上下左右移动,按下D
表示删除选中行,d
表示删选中块
撤销/恢复
- 撤销
u - 恢复:
ctrl + r
恢复(取消)之前的撤销操作
扩展
- 快速移动光标到指定的行
数字 G - 以当前光标为准向上/向下移动n行
数字↑/数字↓ - 以当前光标为准向左/向右移动n字符
数字←/数字→ - 末行模式下的快速移动方式:移动到指定的行
输入行数数字
末行模式
保存
- 输入:
:w
保存文件 - 输入:
:w 路径
另存为
退出
:q
- 保存并退出
:wq
:x
建议使用,会自动判断文件是否被修改进而保存
说明
:x
在文件没有修改的情况下,表示直接退出,在文件修改的情况下表示保存并退出;- 如果文件没有被修改,但是使用
wq
进行退出的话,则文件的修改时间会被更新;但是如果文件没有被修改,使用x
进行退出的话,则文件修改时间不会被更新的,会混淆用户对文件的修改时间的认定。 - 因此建议以后使用“:x”来进行对文件的保存退出。
- 但是:不要使用
X
,X表示对文件进行加密操作。
强制执行
!
调用外部命令
:!外部命令
搜索
/要查找的内容
N/n
键切换上一个/下一个查找结果
替换
:s
/搜索的关键词/新的内容 替换光标所在行的第一处符合条件的内容:s
/搜索的关键词/新的内容/g 替换光标所在行的全部符合条件的内容:%s
/搜索的关键词/新的内容 替换整个文档中每行第一个符合条件的内:%s
/搜索的关键词/新的内容 替换整个文档中符合条件的内容%
:表示整个文件g
:表示全局
vim同时打开多个文件时切换文件
- 查看当前打开的文件名称:
files
%a
表示当前打开的文件#
表示上一个打开的文件line
表示光标所在的行
- 切换文件
- 切换到指定文件
:open 已经打开的文件名称
bn
切换到下一个文件bp
切换到上一个文件
- 切换到指定文件
编辑模式
进入方式
- i:在光标前插入字符
- a:在光标后插入字符
- o:在光标所在行的下面新启一行插入
- I:在光标所在行的行首插入,如果行首有空格则在空格后插入
- A:在光标所在行尾插入
- O:在光标所在行的上方新启一行插入
- S:删除光标所在行并插入
退出方式
- ESC
扩展
代码着色
好像在Ubuntu里面是默认开启的
- 开启着色
syntax on
- 关闭着色
syntax off
显示行号(临时)
- 显示:set nu
- 取消显示:set nonu
vim配置文件
配置文件路径 /etc/vim/vimrc
该文件需要使用root
用户打开.
- 设置永久显示行号,颜色
- 修改全局配置文件
/etc/vim/vimrc
- 修改个人配置文件
~/.vimrc
,如果没有可以自行新建
补充:
- 修改全局配置文件
- 如果针对同一个配置项,个人配置文件中存在,则以个人配置文件为准,如果个人配置文件中不存在这一项,则以全局配置文件为准。
异常配置
异常退出指在退出文件前没有进行正常的保存退出操作.
解决方法:删除交互文件(在编辑过程中临时产生的文件)
别名机制
作用:相当于创建一些自己使用的命令
别名机制依靠一个别名映射文件~/.bashrc
- eg1:添加
cls
指令作为Linux终端的清屏指令
注意:需要重新登录当前操作用户指令才能生效