一、关于vim/vi
Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器
,在Vi的基础上改进和增加了很多特性。vim是从 vi 发展出来的一个文本编辑器
。代码补全、编译及错误跳转等方便编程的功能特别丰富,主要差别就是有高亮显示
。在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。
vi的兼容性更广泛
,有些操作系统默认只有vi没有安装vim
二、VI/VIM的模式
1、命令行模式
2、输入模式
3、末行模式
语法vim
file_name
2.1 vim文件后,默认是命令行模式
命令模式下的快捷键
Y 拷贝行
y 拷贝
P 粘贴在光标前
p 粘贴在光标后
R 替换
X 删除前一个字符
x 删除所在位置字符
dd 剪切
g 跳到首行
G 跳到末行
U 撤销
Ctrl+r 可以取消撤销
还可以用数字决定快捷键的次数:n=次数
nyy 复制多少行
np 粘贴多少次
等等类似的方法
2.2 命令模式切换为输入模式
输入模式才能对文件进行编辑
A:光标移动到所在行的最末尾的位置
a:光标往后移动一个字符
I:光标移动到所在行的行首
i:光标不变
O:光标所在行的上面新建一行
o:光标所在行的下面新建一行
输入模式切换为命令模式
按Esc键
2.3 命令模式切换到末行模式
末行模式指切换到当前页面的最下行,可以通过末行模式执行保存、搜索、标注等辅助功能
命令:shift+ :
末行模式切换为命令模式
按Esc键
命令模式快捷键
:wq 保存退出
:wq! 强制保存退出
:q 退出不保存
:q! 强制退出不保存
:x 保存退出
:set nu 显示行号
:/关键字 #搜索关键字 按住Esc取消,N往上查找 n往下查找
:! ls-ld+路径 #暂时离开,按Enter键回去
:r 路径 #将内容读到正在编辑的文件里
:r ! command #将command的结果读到编辑的文件里
替换公式
:1,$s/ / /g
# 释义
1 代表第一行
$ 代表到最后一行
s 代表被替换的内容
g 代表替换的内容
例如:将apple替换为banana
:1,$s/apple/banana/g
# 就会将全部搜索到的apple替换为banana
如果要替换路径,需要加上转义符“ \ ”
例如:将/usr/test替换为/opt/test
:1,$s/\/usr\/test/\/opt\/test/g
# 理解小方法
可以理解为路径开始两个八(正八加倒八),后面几个子目录几个倒八
将输入模式切换为末行模式
按Esc切为命令模式后再切换
将末行模式切换为输入模式
按Esc切为命令模式后再切换
三、小技巧
同时编辑多个文件
vim file_name(几个文件名就同时编辑几个文件)
-O 可以同时编辑多个文件,为左右显示
-o 可以同时编辑多个文件,为上下显示
切换窗口为Ctrl+w+左右方向键
切换
可视化操作
Ctrl+v 块选择,光标竖着选
shift+v 块选择,光标横着选