目录
[切换至插入模式(Insert mode)编辑文件](#切换至插入模式(Insert mode)编辑文件)
[Insert 的切换](#Insert 的切换)
快速查找
VI的使用
VI的三种模式
命令行模式(command mode): 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
插入模式(Insert mode) :只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
底行模式(last line mode) :将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号......等。
不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。
进入VI
在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:
$ vi myfile
进入vi之后,是处于「命令行模式(command mode)」,要切换到「插入模式(Insert mode)」才能够输入文字。
切换至插入模式(Insert mode)编辑文件
在「命令行模式(command mode)」下按一下字母"i"就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
也可以点击字母"o",表示进入插入模式,且另起一行。
Insert 的切换
目前处于「插入模式(Insert mode)」,按一下「ESC」键可以转到「命令行模式(command mode)」。
退出VI及保存文件
在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:
: w filename (输入 「w filename」将文章以指定的文件名filename保存)
: wq (输入「wq」,存盘并退出vi)
: q! (输入q!, 不存盘强制退出vi)
搜索
/检索词
大小写敏感
快捷删除
在命令行模式下
比如要删除两行,则按下2dd
比如要删除三行,则按下3dd
光标定位到最后一行
按下shfit+g
VIM查找字符串
全匹配
从上往下查找,比如"string" : /string
从下往上查找,比如"string" : ?string
模糊匹配(正则表达式)
. :通配1个字符 ,如匹配 server, 可以用 /se...r
* :通配多个字符,如匹配 privilege,可以用 p*ge
快速查找
Shift + * :让光标停留在想要查找的单词的任意一个字母上面, 然后输入 Shift + * ,即可快速选中该单词,并且通过 n 或 N 进行上一个或下一个的匹配。
yw :让光标停留在单词的第一个字母上, 然后输入yw拷贝该单词, 然后输入 / (Ctrl + R) 0 (即 /"0),回车, 就查找到了第一个匹配的单词, 并且通过 n 或 N 进行上一个或下一个的匹配。