vim三种模式:命令模式、编辑模式、末行模式
命令模式:在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(删除行、复制行、移动光标、粘贴等等)(打开之后进入这个模式)
编辑模式:在该模式下可以对文件的内容进行编辑
末行模式:可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出);
vim的打开文件的方式(4种,要求掌握的前三种)
#vim 文件路径 作用:打开指定的文件
#vim +数字 文件的路径 作用:打开的指定的文件,并且将光标移动到指定行
#vim +/关键词 文件的路径 作用:打开指定的文件,并且高亮显示关键词
#vim 文件路径1 文件路径2 作用:同时打开多个文件
重点:
命令模式
注意:该模式是打开文件的第一个看到的格式(打开文件即可进入)
1、光标的移动
1.光标移动到行首。
按键:shift+6
2、将光标移动到行尾
按键:shift+4
3、光标移动到首行
按键:gg
4、光标移动到末行
按键:G(大写)
5、翻屏
按键:向上翻屏 ctrl + b (before)
向下翻屏 ctrl + f (after)
2、复制操作
1、复制光标所在行
按键:yy
2、粘贴
按键:p
3、以光标所在行为准(包含当前行),向下复制指定的行数;
按键:数字yy
3、可视化复制
按键:ctrl+v
按下yy复制 按下p复制
3、剪切/删除
删除行:按键:dd (删除之后下一行上移)
剪切不粘贴就是删除效果
2、剪切/删除光标所在行为准,向下删除\剪切指定的行
按键:数字dd
3、剪切\删除光标所在的当前行,但是删除之后下一行不上移
按键:D (删除之后当前行会变成空白行)
4、撤销/恢复
撤销:按键 冒号+u 或者u
恢复:ctrl + r
5、扩展1:光标的快速移动
1、快速将光标移动到指定的行
按键:数字 +G
四、模式间的切换
五、末行模式
进入方式:由命令模式进入,按下“:”即可进入
退出方式:
a.按下esc
b.连按两下esc
c.删除末行全部输入字符
1保存操作
输入:“:w” 保存文件
输入:“:w 路径” 另存文件
退出
输入:q
保存并退出
输入 : wq
强制:!
输入:“q!”表示强制退出,刚才做的修改操作不做保存
!加语句 执行外部命令
6 搜索/查找
输入:“/关键词”
在搜索结果中切换上/下一个结果 N/n
取消高亮,输入:“:nohl”
7、替换
:s/搜索的关键词/新的内容 替换光标所在行第一处的内容 /g 替换当前行所有
%s/搜索的关键词/新的内容 替换所有每行的首个
%表示整个文件
g表示全局
8、显示行号
输入:“:set nu”
取消:“:set nonu”
9、扩展2:使用vim同时打开多个文件,在末行模式下进行切换文件
查看当前已经打开的文件名称:“:files”
%a表示当前正在打开的标签
#:表示上一个打开的文件
切换文件的方式:
a. 如果需要指定切换文件的名称,则可以输入:“:open 已经打开的文件名”
b. 可以通过其它命令来切换上一个和下一个文件
输入:“bn”切换到下一个文件
输入:“:bp”切换到上一个文件
六、编辑模式

退出按esc
八 、扩展
1、vim的配置
vim是一款编辑器,编辑器也是有配置文件的。
vim配置有三种情况:
a.在文件打开的时候在末行模式下输入的配置(临时的)
b.个人配置文件(~/.vimrc)
c.全局配置文件(vim 自带)
1 新建好个人配置文件之后进入编辑
2 在配置文件中进行配置
比如显示行号:set nu
配置好之后vim打开文件就会永远显示行号
2、异常退出的问题:在编辑文件之后并没有正常去wq 或者断电的情况
,则会显示下面的情况
解决办法:将交换文件(在编程过程产生的临时文件) 删除掉即可
3、别名机制
作用:相当于创建一些属于自己的自定义的命令
列如:在windows 里有cls命令 , 在Linux下可能没有这个而不习惯
通过别名机制来解决,可以自己创造出cls命令
别名机制依靠一个别名映射文件:~/.bashrc
新创造的命令生效,必须重新登入当前用户
4、退出方式
vim除 q 和wq
还支持 :x
说明:
1、“:x”在文件没有修改的情况下,表示直接退出,在文件修改的情况下表示保存并退出
2. 如果文件没有被修改,但是使用wq进行退出的话,则文件的修改时间会被更新l如果是文件没有被修改
使用x进行退出的话,则文件修改时间不会被更新的。
主要回混淆用户对文件的修改时间的认定。
因此建议以后使用“:x”来进行对文件的保存退出
X 是对文件加密
