所有的 Unix Like(类Unix) 系统都会内建 vi 文书编辑器,vim是一个全屏幕纯文本编辑器,是vi编辑器的增强版。
vim官网(https://www.vim.org/)对vim编辑器的解释:
------------------------------------------------------------------------------------------------------------------------
Vim - 无处不在的文本编辑器
Vim是一个高度可配置的文本编辑器,用于有效地创建和更改任何类型的文本。它包含在大多数UNIX系统和Apple OS X的“vi”中
Vim非常稳定,并且不断开发以变得更好。其功能包括:
-
- 持久的,多级撤消树
- 广泛的插件系统
- 支持数百种编程语言和文件格式
- 强大的搜索和替换
- 与许多工具集成
-------------------------------------------------------------------------------------------------------------------------
一. vim基本使用
1. vim的工作模式
vim工作在三种模式之下:
命令模式:启动 vi/vim,便进入了命令模式
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。
命令模式→输入模式(主要用于文本编辑,和记事本类似):
-
-
-
- a: 在光标所在的字符后插入
- A: 在光标所在行尾插入
- i : 在光标所在字符前插入
- I : 在光标所在行行首插入
- o: 在光标下插入新行
- O: 在光标上插入新行
- a: 在光标所在的字符后插入
-
-
命令模式→编辑模式(末行模式):
-
-
-
- w:保存不退出
- w 新文件名:把文件另存为新文件
- q:不保存退出
- wq:保存退出
- q!:强制不保存退出,用于修改文件后,不保存数据退出
- wq! : 强制保存退出,当文件的所有者或者root用户,对文件没有写权限的时候,强制写入数据使用
-
-
2. 命令模式操作
2.1 移动光标
1) 上下左右移动光标
上下左右 键
k(上)j(下)h(左)l(右) 键
2) 把光标移动到文件头或尾
gg 移动到文件头
G 移动到文件尾
3) 移动到行首或行尾
^ 移动到行首
$ 移动到行尾巴
4) 移动到指定行
:n 移动到第几行
2.2 删除或剪切
1)删除字母
x 删除单个字母
nx 删除n个字母
删除字母并不符合使用习惯,更习惯在编辑模式中,用“Backspace”键删除字母
2)删除整行或剪切
dd 删除单行
ndd 删除多行
:n1,n2d 删除指定范围的行
dd快捷键既是删除,也是剪切。粘贴方法:
p 粘贴到光标后
P(大写) 粘贴到光标前
3) 从光标所在行删除到文件尾
dG d是删除行;G是文件尾
2.3 复制
yy 复制单行
nyy 复制多行
复制之后的粘贴,依然可以使用p或P键
2.4 撤销
u 撤销 (类似Windows下“Ctrl+z”)
Ctrl+r 反撤销 (类似Windows下“Ctrl+y”)
2.5 替换
r 替换光标所在处的字符
R 在光标所在处开始替换字符,按Esc结束
r 键替换单一字符,不用进入输入模式,实际使用时,比进入输入模式删除后再修改,要方便 。
2.6 vim配置文件
这是编辑模式参数设置,多数需要在vim中才能生效
: set nu 显示行号
: set nonu 取消行号
: syntax on 开启依据语法显示的相关颜色帮助。在vim中修改相关的配置文件或shell脚本时,默认
会显示相应的颜色,用来帮助排错。如果觉得颜色产生了干扰,则可以取消设置。
: systax off 关闭
: set hlsearch 设置是否将查找的字符串高亮显示。默认是高亮显示
: set nohlsearch
: set ruler 设置是否显示右下角的状态栏,默认显示
: set noruler
: set showmode 设置是否在左下角显示如‘“-INSERT-”之类的状态栏,默认显示
: set noshowmode
: set list 设置是否显示隐藏字符(Tab用“^I”表示,回车符用“$”表示),默认不显示
: set nolist
vim支持更多的设置参数,可以通过“set all”进行查看。
这些设置参数都只是临时生效;可手工建立vim配置文件“~/.vimrc”,把需要的参数写入配置文件就永久生效了
二. vim使用技巧
1. 多文件打开
在vim中可以同时打开两个文件,执行如下命令即可:
vim -o abc bcd
vim -O abc bcd
小写o会上下分屏打开两个文件,可以通过先按“ctrl+w”,再按“上下箭头”的方式在两个文件之间切换。
大写o会左右分屏打开两个文件,可以通过先按“ctrl+w”,再按“左右箭头“”的方式在两个文件之间切换。