vi|vim
vim
删除命令 | ||
---|---|---|
dd | 删除光标所在行 | |
2dd | 向下删除2行 | |
dG | 从光标开始删除到文档结尾 | :.,$d .,$-2d |
dH | 从光标开始删除到文档开头 | |
dw | 一次删除一个字 | |
x|X | 一次删除一个字符 | |
:2,3d | 删除2-3行 | |
. | 重复上次操作 |
替换命令 | ||
---|---|---|
r | 替换单个字符 | |
R | 进入替换模式 | |
:s///g |
全局替换 | |
yy|2yy | :1,$-1y | |
p|P |
选项 | ||
---|---|---|
:set all | 打印所有选项 | |
:set ic | 查找时忽略大小写 | |
:set noic | 查找时对大小写敏感 | |
:set nu | 每行前打印行号 | |
:set ts=2 | 设置tab=2个空格 | |
:.= | 打印当前行的行号 | |
:= | 打印文件中的行数 | |
^g | 显示文件名、当前的行号、文件的总行数和文件位置的百分比 | |
:l | 使用字母"l"来显示许多的特殊字符,如制表符和换行符 | |
:!command | 执行shell的command命令 | !ls |
:r!command | 读取command命令的输入并插入 | 如:r!ls会先执行ls,然后读入内容 |
:w!command | 将当前已编辑文件作为command命令的标准输入并执行command命令 | 如:w!grep all |
:cd directory | 将当前工作目录更改为directory所表示的目录 | |
:sh | 将启动一个子shell,使用^d(ctrl+d)返回vi | |
n<< | 使n行都向左移动一个宽度 | |
n>> | 使n行都向右移动一个宽度,例如3>>就将接下来的三行每行都向右移动一个移动宽度 |
:set paste
https://blog.csdn.net/weixin_44648216/article/details/103788877
格式化代码
- gg 跳到首行行首
- shift+v 转为可视化模式,选中首行
- shift+g 全选
- 按下 = 键