Vim重点:光标的移动、模式切换、删除、查找、替换、复制、粘贴、撤销命令的使用
Vim中存在三种模式(大众的认知):命令模式、编辑模式(输入模式)、末行模式(尾行模式)
命令模式: 在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(删除行,复制行,移动光标,粘贴等等) ———— 打开文件之后默认进入的模式
编辑模式: 在该模式下可以对文件的内容进行编辑
末行模式:可以在末行输入命令对文件进行操作(搜索、替换、保存、退出、撤销、高亮)
Vim的打开文件的方式(4种,要求掌握的就前三种)
#vim 文件路径 作用:打开指定的文件
#vim +数字 文件的路径 作用:打开指定的文件,并且将光标移动到指定行
#vim +/关键词 文件的路径 作用:打开指定的文件,并且高亮显示关键词
#vim 文件路径1 文件路径2 文件路径3 作用:同时打开多个文件
重点:先复制出一个/etc/passwd文件,复制当前家目录下 (不要直接在etc/passwd直接改,养成一个良好的运维习惯)
后续一切vim命令都基于 /root/passwd文件进行操作
#cd /root/
#vim passwd
#vim +10 passwd
#vim +/login passwd
退出方式 : 冒号+q
注意:改模式打开文件的第一个看到的模式(打开文件即可进入)
1、光标移动
①光标移动到行首 或 ^ 按键:shift + 6 (T字母上面的6,不要按小键盘的6)
②光标移动到行尾 或 $ 按键:shift + 4 (R字母上面的4)
③光标移动到首行 按键:gg
④光标移动到末行 按键:G (shift+G)
⑤翻屏
向上翻屏:按键 ctrl + b (back) 或 PgUp
2、复制操作
①复制光标所在行 按键:yy
粘贴:在想要复制的地方按下 P 键
②以光标所在行为准(包含当前行),向下复制指定的行数 按键:数字yy
③可视化复制 按键:ctrl + v 然后通过 方向键 选中之后,按下yy
3、剪切/删除
①剪切/删除光标所在行 按键:dd
注意:dd严格意义上说是剪切命令,但是如果剪切了不粘贴就是删除的效果
②剪切/删除光标所在行为准(包含当前行),向下删除/剪切指定的行
按键:数字dd
③剪切/删除光标所在的当前行,但是删除后下一行不上移动(删除之后当前行会变空白行 )
按键:D
4、撤销/恢复
撤销:u 输入 冒号+u(但这个不属于命令模式) undo
恢复:ctrl + r 恢复(取消)之前的撤销操作
5、扩展1:光标的快速移动
①快速将光标移动到指定的行 按键:数字G
②以当前光标为准 向上下 移动n行 按键:数字 ↑,数字 ↓
③以当前光标为准 向左/向右 移动n字符 按键:数字←,数字→
④末行模式 —— 按键:冒号+数字
进入方式:由命令模式进入,按下 “ :” 即可进入 还有 / (搜索)
退出方式:
a.按下esc
b.连按2次esc键
c.删除末行全部输入字符
①保存操作
输入:“ :w ” 保存文件
输入:“ :w 路径 ” 另存为
②退出
输入:“ :q ”
③保存并退出
输入:“ :w q”
④强制( !)
输入:“ :q !” 表示强制退出,刚才做的修改操作不做保存
⑤调用外部命令
输入: “ :!外部命令 ”
⑥搜索/查找
输入:“/关键词”
在搜索结果中切换 上/下结果 : N / n
如果需要取消高亮,则需要输入 :nohl (no highlight)
⑦替换
:s / 搜索的关键词 / 新的内容 替换光标所在行的第一处符合条件的内容
:s / 搜索的关键词 / 新的内容 / g 替换光标所在行的全部符合条件的内容
:%s / 搜索的关键词 / 新的内容 替换整个文档中每行第一个符合条件的内容
:%s / 搜索的关键词 / 新的内容 / g 替换整个文档的符合条件的内容
%表示整个文件 g表示全局(global)
⑧显示行号
输入: “:set nu”
如果想取消显示,则输入 “:set nonu”
⑨扩展2: 使用vim同时打开多个文件,在末行模式下进行切换文件
查看当前以及打开的文件名称: “ :files ”
第35行是表示当前 光标停留的位置
在%a参数的位置有2种显示可能:
%a :a = active,表示当前正在打开的文件
#:表示上一个打开的文件
切换文件的方式:
a.如果需要制定切换文件的名称,输入 : “:open 已经打开的文件名 ”
:oepn group
b.可以通过其他命令来切换上一个文件 / 下一个文件
输入 : “:bp ” 切换到上一个文件(back previous)
输入 : “:bn ” 切换到下一个文件(back next)
1、代码着色
如何控制着色 显示与否?
显示: “:syntax on”
关闭显示: “:syntax off”
2、vim中计算器的使用
当在编辑文件的时候突然需要使用计算器去计算一些公式,则此时需要用计算器,但是需要退出,vim自身集成了一个简易的计算器
a.进入编辑模式(按i进入)
b.按下按键 “ctrl +R”,然后输入 “ = ”,此时光标会变到最后一行
c.输入需要计算的内容,按下回车
1、Vim的配置(重点)
Vim是一款编辑器,编辑器也是有配置文件的。
Vim配置有三种情况:
a.在文件打开的时候在末行模式下输入的配置(临时的)
b.个人配置文件(~/.vimrc,如果没有可以自行新建 touch .vimrc)
c.全局配置文件(vim自带,/etc/vimrc)
①在home目录下,新建好个人配置文件之后进入编辑
cd
touch .vimrc
②在配置文件中进行配置
vim .vimrc
配置好之后vim打开文件就会永远显示行号
问题:如果某个配置项,在个人配置文件与全局配置文件产生冲突的时候应该以谁为准?
个人配置文件中存在,则以个人配置文件为准。 不存在则以全局配置文件为准
2、异常退出
异常退出:在编辑文件之后并没有正常的去wq(保存退出),而是遇到突然关闭终端或者断电的情况,则会显示下面的效果
解决方法:将交换文件(在编译过程中产生的临时文件)删掉即可 ___ cd下 ls -a
#rm -f .xxx.swp
3、别名机制
作用:相当于创建一些属于自己的自定义命令
例如:在windows下有 cls的清屏,我也想在Linux cls (实际 Linux的清屏是 clear 或 ctrl +L)
别名机制依靠home目录下的一个别名映射文件:~/.bashrc
vim下 alias cls=‘clear’
注意: 如果想新创造的命令生效,重新登陆当前用户 或 执行source ~/.bashrc即可,无需重新登录
4、退出方式
除了 q和wq,还有个 : x (如果修改了,它会保存退出。如果没修改,它直接退出)
如果用 wq ,即使文件没修改,用wq后 文件修改时间也会更新
:X (注意别用到大X,这个大X是对文件加密的意思)