linux vim常用操作
文档操作:
vim test.txt 打开当前目录下的test.txt文档,若不存在则创建该文件
:w 保存当前修改到文件
:w bak.txt 另存为bak.txt
:q 退出vim关闭文档
:wq 保存并退出vim关闭文档
:set nu 显示行号
:set nonu 隐藏行号
:%s/stringA/stringB/g 将当前文档中所有stringA替换成stringB
:s/stringA/sringB/g 将选定区域内的所有stringA替换成stringB
i 从光标所在处进入插入模式。
o 开启新行进入插入模式
u 撤销上一次操作esc 退出插入模式
一下所有操作必须在非插入模式
光标移动:
在命令行模式:
G 将光标移动到当前文档最后一行开头
G o 则是文本最末尾 并另起一行
gg 将光标移动到当前文档第一行。
^或0 将光标移动到本行第一个字符
$ 将光标移动到本行最后一个字符
j 将光标往下移动一行
k 将光标往上移动一行
h 将光标往左移动一个字符
l 将光标往右移动一个字符
Ctrl + f 屏幕往下滚动一页
Ctrl + b 屏幕往上滚动一页
Ctrl + e 屏幕往下滚动一行
Ctrl + y 屏幕往上滚动一行
v 字符选择模式,从光标当前字符开始往前或往后连续选定字符,被选区域背景反白。
V 行选择模式,从光标所在行开始往前或往后连续选定行,被选区域背景反白。
Ctrl + v 块选择模式,列选择,光标开始处与光标结束处为对角构成矩形选择区域,被选区域背景反白。
例如
dog is dog
cat is cat
hot is not dog
hat is not cat
用块选择模式,可以只选中第一二列对齐的字符。
y/d将被选反白区域复制/删除.
复制删除:
x删除光标后边字符
X删除光标前边字符
dd 删除光标所在行。
yy 复制光标所在行。
ndd/nyy 复制/删除从光标开始往下共n行。
dw 删除光标所在字符的整个单词,比如work 无论当前光标处在w o r k哪个字符,work整个单词都会被删除。
yw 复制光标所在字符的整个单词,比如work 无论当前光标处在w o r k哪个字符,work整个单词都会被复制。
ndw/nyw 复制/删除光标所在字符单词开始的连续n个单词。
d^ 删除从光标开始到该行第一个字符
D/d$ 删除从光标开始到该行最后一个字符
p 粘贴复制的内容,如果是单词或者字符则从当前光标处开始,如果是一整行则会插入到下一行。
P 粘贴复制的内容,如果是单词或者字符则从当前光标处开始,如果是一整行则会插入到上一行。
查找:
/string 从光标开始往后查找string字符,查找整个文档
?string 从光标开始往前查找string字符,查找找个文档
n 跳转到当前字符查找结果的后一个所在处
N 跳转到当前字符查找结果的前一个所在处
# 在显示页面中查找当前光标所在单词,注意并不是查找整个文档。