vi|vim

vim

移动光标
h(左)、j(下)、k(上)、l(注释:L键不是i,右)
0 (零按键) 移动到当前行的行首
^ 移动到当前行的第一个非空字符
$ 移动到当前行的末尾
w 移动到下一个单词或标点符号的开头
W 移动到下一个单词的开头,忽略标点符号
b 移动到上一个单词或标点符号的开头
B 移动到上一个单词的开头,忽略标点符号
ctrl + f 向下翻页
ctrl + b 向上翻页
<num>+G 移动到第
G 移动到文件末尾
gg 移动到文件开头
删除命令
dd 删除光标所在行
2dd 向下删除2行
dG 从光标开始删除到文档结尾 :.,$d
.,$-2d
dH 从光标开始删除到文档开头
dw 一次删除一个字
x|X 一次删除一个字符
:2,3d 删除2-3行
. 重复上次操作
替换命令
r 替换单个字符
R 进入替换模式
:s///g 全局替换 :%s/Line/line/g
yy|2yy :1,$-1y
p|P

全局查找和替代

vi 使用 ex 命令来执行查找和替代操作(vi 中叫做“替换”)。把整个文件中的单词“Line”更改为“line”, 我们输入以下命令:

:%s/Line/line/g

我们把这个命令分解为几个单独的部分,看一下每部分的含义:

条目 含义
: 冒号字符运行一个 ex 命令。
% 指定要操作的行数。% 是一个快捷方式,表示从第一行到最后一行。另外,操作范围也 可以用 1,5 来代替(因为我们的文件只有5行文本),或者用 1,$ 来代替,意思是 “ 从第一行到文件的最后一行。” 如果省略了文本行的范围,那么操作只对当前行生效。
s 指定操作。在这种情况下是,替换(查找与替代)。
/Line/line 查找类型与替代文本。
g 这是“全局”的意思,意味着对文本行中所有匹配的字符串执行查找和替换操作。如果省略 g,则 只替换每个文本行中第一个匹配的字符串。
选项
: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

格式化代码

  1. gg 跳到首行行首
  2. shift+v 转为可视化模式,选中首行
  3. shift+g 全选
  4. 按下 = 键
posted @ 2021-11-02 09:23  mingtian是吧  阅读(25)  评论(0)    收藏  举报