Linux--基础知识点--4.2--vim常用命令
:nu
- 显示输入:nu命令时光标所在行号和内容。
:set nu
- 编辑模式
- 显示所
i
:在光标之前插入字符I
:在当前行行首插入字符a
:在光标之后插入字符A
:在当前行行尾插入字符o
:在当前行下插入空行O
:在当前行上插入空行x
:删除当前字符X
:删除当前字符左边的字符r
:替换当前字符R
:从当前字符开始连续替换
gg
- 命令模式
- 跳转到文件开头
G
- 命令模式
- 跳转到文件最后一行的开头
-
行号G
- 跳转到指定行的开头
-
M
- 命令模式
- 跳转到屏幕的中间一行的开头
z
-
z+Enter
- 命令模式
- 将光标所在行移动到屏幕顶端
-
z.
- 命令模式
- 将光标所在行移动到屏幕中间
-
z-
- 命令模式
- 将光标所在行移动到屏幕低端
滚屏
({屏幕顶端:上,屏幕底端:下})
-
Ctrl+f
- 往上滚动一整屏
-
Ctrl+b
- 往下滚动一整屏
-
Ctrl+d
- 往上滚动半屏
-
Ctrl+u
- 往下滚动半屏
yw
- 命令模式
- 复制单词进0寄存器和""寄存器
dw
- 命令模式
- 光标位于单词前后有空格的字符串的某一个字符上
- 从该字符开始删除包括紧跟字符串的后面所有空格
- 注意与
diw
、daw
的区别-
diw
- 命令模式
- 光标位于单词前后有空格的字符串的任意一个字符上
- 只删除单词本身,不删除单词前后的空格
-
daw
- 命令模式
- 光标位于单词前后有空格的字符串的任意一个字符上
- 删除字符串本身和紧跟字符串后面的所有空格
-
v
- 命令模式
- 可视
- 注意与
V
的区别-
V
- 命令模式
- 块可视
-
-
v
+y
/V
+y
- 将选中的内容复制到0寄存器
行数yy
- 命令模式
- 默认将指定的多行复制到0寄存器和""寄存器(无名寄存器)。
p
- 命令模式
- 默认将""寄存器内容粘贴到光标之后
- 注意与
P
的区别-
P
- 默认将""寄存器内容粘贴到光标之前
-
d
- 删除类命令举例
-
“cd2l
向右删除2个字符 并且把内容存到 字母寄存器 “c 中 -
”d3dd
删除当前行和下面2行 并且把内容存到 字母寄存器 “d 中 -
“fdf.
删除当前位置到句号 并且把内容存到 字母寄存器 “f 中 -
“gd'c
删除当前位置到标记c位置 并且把内容存到 字母寄存器 “g 中
-
- 删除类命令也会默认将所删除内容放到指定寄存器和默认的"“寄存器,放到”"寄存器相当于windows里的剪切板,之后再使用
p
或P
进行粘贴
:set hlsearch
- 编辑模式
- 查找结果高亮显示
:/string
- 编辑模式
- 全匹配,使用n从上往下查找,使用N转为
:?string
从下往上查找
:?string
- 编辑模式
- 全匹配,使用n从下往上查找,使用N转为
:?string
从上往下查找
.
- 通配符,模糊匹配
- 通配1个字符
- 例如匹配server,可以用
:se...r
*
- 通配符,模糊匹配
- 通配多个字符
- 例如匹配privilege,可以用
:p*ge
Shift + *
- 命令模式
- 快速查找
- 让光标停留在想要查找的
单词
的任意一个字母上面, 然后输入Shift + *
,即可快速选中该单词,并且通过n
或N
进行上一个或下一个的匹配。
yw
+ :/(Ctrl+R)
- 命令模式 + 编辑模式
- 快速查找
- 让光标停留在
单词
的第一个字母上, 然后输入yw
拷贝该单词进0寄存器, 然后输入 / (Ctrl + R)(即 /”0),回车, 就查找到了第一个匹配的单词, 并且通过 n 或 N 进行上一个或下一个的匹配。
s
-
:s/regexp/replacemet
- 替换当前行出现的第一个匹配
-
:s/regexp/replacemet/g
- 替换当前行出现的所有匹配
-
:%s/regexp/replacemet/g
- 替换文件中所有匹配
-
:%s/regexp/replacemet/gc
- 每次替换要求确认