Vim操作
VIM编辑器操作
特点
- 没有菜单,只有命令
- 功能强大
作用
- 建立、编辑、显示文本文件
常用操作
命令模式
- 当我们使用
vi/vim 文件名时,就会进入到编辑器的默认模式——命令模式中- 如果文件不存在,就会新建
- 在命令模式中,你在键盘上的每一个按键都会被编辑器当作一个命令指令来看待
- 比如
i、a、o
- 比如
常用命令介绍
-
进入插入模式的命令
i在光标所在字符前插入I在光标所在行的行首插入a在光标所在字符后插入A在光标所在行的行尾插入o在光标下插入新行O在光标上插入新行
-
移动光标的命令
gg光标到第一行G光标到最后一行nG光标到第n行$光标移至行尾0光标移至行首
-
删除字符
x删除光标所在处字符nx删除光标所在处后面的n个字符,包含该字符(注意删除多个字符昂)D删除光标所在处到行尾的内容
-
删除行
dd删除光标所在行ndd删除光标所在行后面的n个行,包含该行(注意删除多行昂)dG删除光标所在行到文件末尾的内容
-
复制(yank)
yy复制当前行nyy复制当前行以下n行(包括当前行)
-
剪切(delete)
dd剪切当前行ndd剪切当前行以下n行(包含当前行)
-
粘贴命令(paste)
p粘贴到当前光标所在行下P粘贴到当前光标所在行上
-
替换(replace)
r取代光标所在处字符R从光标所在处开始替换字符,按ESC结束
-
撤销操作(undo)
u取消上一步操作
-
搜索
/string搜索指定字符串,再回车- 默认是严格区分大小写的,可以在搜索前,进入编辑模式,输入命令
set ic
- 默认是严格区分大小写的,可以在搜索前,进入编辑模式,输入命令
n搜索指定字符串的下一个出现位置- 搜索替换请见编辑模式
-
保存和退出命令
ZZ保存修改并退出- 其他命令请见编辑模式
注意
- 任何命令都要在命令模式(按esc从插入模式退出到命令模式)下才能执行
插入模式
退出插入模式
- 按
esc键即可
编辑模式
编辑模式常用命令
-
行号
:set number或set nu设置行号:set nonu取消行号
-
光标
:n光标到第n行- 等价于命令模式下
nG
- 等价于命令模式下
-
删除
:m, nd删除指定范围的行,包含起始和结尾
-
大小写
- 默认是严格区分大小写的,使用
:set ic可以在搜索时不严格区分大小写 set noic严格区分大小写
- 默认是严格区分大小写的,使用
-
搜索替换
:%s/old_str/new_str/g全文替换指定字符串- 这里的
g是在替换的过程中不询问是否替换,如果用的是字母c`就会在每次替换的时候询问
- 这里的
:m,ns/old_str/new_str/g在一定范围内替换指定字符串
-
保存和退出
:w保存修改- 在编辑过程中就可以一边编辑一边保存
:w new_filename另存为指定文件:wq保存修改并退出:q!不保存修改退出:wq!保存修改并退出- 只有文件所有者或root用户可以使用
- 用来强行修改只读权限的文件
退出编辑模式
- 编辑模式每一次执行完命令之后都会回退到命令模式
文件内容操作
导入其他文件内容到当前文件
- 编辑模式下
:r 文件路径
在不退出VIM的情况下执行其他命令
- 编辑模式下
:! 命令- 常用的比如在shell编程中,你想引入一条命令,但是有不知道它额路径,这份时候就可以在不切出VIM的情况下使用该命令
- 编辑模式下
:! which ls
- 编辑模式下
- 常用的比如在shell编程中,你想引入一条命令,但是有不知道它额路径,这份时候就可以在不切出VIM的情况下使用该命令
在当前文件的当前光标所在行中导入命令的执行结果
- 编辑模式下
:r !命令- 比如在文件中导入当前事件
:r !date
- 比如在文件中导入当前事件
其他操作
自定义快捷键
:map 快捷键 触发命令
梦想随心,天地随行

浙公网安备 33010602011771号