Linux vi编辑器
1.移动光标
左(h)、下(j)、上(k)、右(l)
进入编辑模式有三个按钮:i、a、o
,i在光标位置编辑,a在光标后一位编辑,o换行编辑、新起一行
ctrl+f 下翻一页
ctrl+b 上翻一页
ctrl+u 上翻半页
ctrl+d 下翻半页
0 跳至行首,不管有无缩进,就是跳到第0个字符
^ 跳至行首的第一个字符(shift+6)
$ 跳至行尾(shift+4)
gg 跳至文首
G 跳至文尾(shift+g)
5gg/5G 跳至第五行,或者命令行模式:5回车,也是跳到第五行
2.删除和复制
x 删除单个字符
10x 删除10个字符
dd 删除光标所在行(dd其实是剪切的操作) #使用u撤销之前的操作
6dd 从光标开始往下删除6行
dw 删除一个单词
小p 粘贴粘贴板的内容到当前行的下面
大P 粘贴粘贴板的内容到当前行的上面
yy 复制行
5yy 复制5行,复制的内容可以通过p\P来粘贴
3.搜索和替换
搜索:/要搜索的内容
向后搜索,辅助小n向下和大N向上
替换::行号s/被替换的内容/替换的内容/g
/还可以用#或者@来代替
:行号1,行号2s/被替换的内容/替换的内容/g
/将行号1到行号2之间的全部替换
:行号,$s/被替换的内容/替换的内容/g
/将指定行到文末中的全部替换
:$s/被替换的内容/替换的内容/g
/整个文件的全部替换
4.退出编辑器
:w 保存不退出
:wq 保存并退出
:x 保存并退出,和wq一样效果
:q 退出,若修改过,会提示
:q! 强制退出,放弃修改
5.vi注意问题和原理说明
vi编辑内容原理
注意:如果内存中的数据没有修改,没什么事,如果修改了,并且不小心断开连接了,也就是没有正常退出vi,比如
会发现出现隐藏文件,这个隐藏文件会一直在硬盘上,接下来我们断开连接,当我们重新vi修改1.txt的时候,会出现一下情况
这个是提示,已经有.1.txt.swp
文件了,当看到这个提示信息时就要考虑,是不是自己之前不小心没保存就掉线了,还是说有其他人正在编辑这个文件。
如果是自己之前没保存,那么可以选择删除这个隐藏的swp文件,再编辑就没有这个提示了,这是最简单的方式;或者输入vi -r 1.txt
会看到自己之前修改的内容,重新wq!
保存一下,然后再删除.1.txt.swp
文件即可。