欢迎大家来到IT世界,在知识的湖畔探索吧!
1.命令含义
Vim命令是一个linux下的高效的编辑器,使用快捷键进行文件内容的编辑,它支持以下几种模式:
1)正常模式:可以使用快捷键命令,或按:输入命令行。
2)插入模式:在正常模式下,按i/I、a/A、o/O可以进入插入模式,在插入模式下可以输入文本。
3)可视模式:在正常模式下按v可以进入可视模式, 在可视模式下,移动光标可以选择文本;按V进入可视行模式,可以进行整行内容的选中;按ctrl+v进入可视块模式,可以进行文本内容的批量修改。
4)替换模式:正常模式下,按R进入。
2.使用vim打开文件
在命令行下输入vim file命令即使用vim命令打开该文件,就可以进行编辑了,在查看日志内容时,可能会用到打开文件直接定位到第n行,使用如下命令:
vim +n file: 从第n行开始
3.vim中的基本快捷操作
快捷操作都是在正常模式下进行的
1)光标的移动
h或退格或左箭头: 光标向左移动一个字符。
l(小写的L)或空格或右箭头: 光标向右移动一个字符。
j或下箭头: 光标向下移动。
k或上箭头: 光标向上移动。
w: 光标向右移动一个单词,光标停在下一个单词开头,移动到行末尾后,再按w光标会移动到下一行行首。
W: 移动下一个单词开头,如果一行只有一个单词,那么按W会移动到下一行的开头。
e: 光标向右移动一个单词,光标停在下一个单词末尾。
E: 光标向右移动到下一个单词末尾,如果词尾有标点,则移动到标点。
b: 光标向左移动一个单词,停在上一个单词开头。
B: 光标向左移动到上一个单词开头,忽略一些标点。
fc: 把光标移到同一行的下一个c字符处,只能移动一次。
Fc: 把光标移到同一行的上一个c字符处
0: 移动到当前行行首。
$: 移动到当前行行尾。
nG: 移动到文件第n行。
:n回车:移动到第n行。
:$回车 移动到最后一行。
gg: 移动到文件头部。
G: 移动到文件尾部。
2)翻页
ctrl+f: 向下翻一页。
ctrl+b: 向上翻一页。
3)插入文本
i: 在光标前插入;
I(大写i): 在当前行第一个非空字符前插入;
a: 在光标后插入;
A: 在当前行最后插入;
o: 在当前行下面新建一行插入;
O: 在当前行上面新建一行插入;
:r filename在当前行下方插入另一个文件的内容。
:r !command在光标处插入command命令的输出,比如 :r !ls -al
批量插入内容小技巧:按数字n,再按i,进入插入模式,输入任意内容x,按esc进入命令模式,就会出现n个x,比如按10i-<esc>就会插入10个-
4)改写文本
r:直接改写当前光标内容,比如按r,然后按c,将当前光标的内容改写为c
R:进入改写模式,只要没有退出,就会一直改写内容
5)复制、粘贴、剪切
y: 复制在可视模式下选中的文本,需要先按v进入可视模式,然后选中文本后按y进行复制。
yy or Y: 复制整行文本。
y$: 从光标当前位置复制到行尾。
y0: 从光标当前位置复制到行首。
:m,ny回车 复制m行到n行的内容。
ygg: 复制光标以上的所有行。
yG: 复制光标以下的所有行。
p: 在光标之后粘贴。
P: 在光标之前粘贴。
d: 删除(剪切)在可视模式下选中的文本,与y一样,也需要先进入可视模式。
d$ or D: 删除(剪切)当前位置到行尾的内容。
d0: 删除(剪切)当前位置到行首的内容
dd:删除(剪切)当前行
[n] dd: 删除(剪切)1(n)行,
:m,nd<cr> 剪切m行到n行的内容。
dgg: 剪切光标以上的所有行。
dG: 剪切光标以下的所有行。
6)查找与替换
/content: 在后面的文本中查找content。
?content: 在前面的文本中查找content。
n: 向后查找下一个。
N: 向前查找下一个。
:s/old/new 用new替换当前行第一个old。
:s/old/new/g 用new替换当前行所有的old。
:n1,n2s/old/new/g 用new替换文件n1行到n2行所有的old。
:%s/old/new/g 用new替换文件中所有的old。
:%s/^/xxx/g 在每一行的行首插入xxx,^表示行首。
:%s/$/xxx/g 在每一行的行尾插入xxx,$表示行尾。
:%s/\n/ /g 将行尾的换行符变成空格
7)分屏编辑
vim -o file1 file2:水平分割窗口,同时打开file1和file2
vim -O file1 file2:垂直分割窗口,同时打开file1和file2
:sp — 把当前窗水平分割成两个窗口。(CTRL-W s有同样的效果,切换窗口时,可以按两次ctrl-w)
:sp filename — 水平分割窗口,并在新窗口中显示另一个文件。
:vsp — 把当前窗口分割成垂直分布的两个窗口。 (CTRL-W v有同样的效果)
:vsp filename – 垂直分割窗口,并在新窗口中显示另一个文件。
8)关闭窗口
:qall — 关闭所有窗口,退出vim。
:wall — 保存所有修改过的窗口。
:only — 只保留当前窗口,关闭其它窗口。(CTRL-W o)
:close — 关闭当前窗口,CTRL-W c能实现同样的功能。
9)切换窗口
ctrl+w w: 切换到下一个窗口。
ctrl+w h(l,j,k):切换到左(右,下,上)的窗口。
10)撤消与重做
[n] u: 取消n个改动。
:undo 5 — 撤销5个改变。
:undolist — 你的撤销历史。
U: 取消当前行中所有的改动。
11)文档操作
:w 保存修改不退出。
:wq 保存并退出。
:x 保存并退出。
:q! 不保存并退出
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/100448.html