每天一点Linux-04vi编辑器
vi编辑器
1.命令模式:
a. 光标定位
hjkl 光标左下上右
0 光标跳到当前行的首部
$ 光标跳到当前行的末尾
gg 跳到第一行
G 跳到最后一行
3G 跳到第3行
/string 快速定位到包含string(n N来翻找)
/d 搜索以d开头的行
/txt$ 搜索以txt结尾的行
b.文本编辑
y 复制 yy(复制光标当前行) 3yy(复制当前光标下面的三行) ygg(从第一行复制到当前光标行) yG(从当前行复制到最后一行)
d 删除 dd(删除当前行) 3dd(删除包括当前光标内的下三行) dgg(删除包括当前光标以上的所有行) dG(删除包括当前光标以下的所有行)
p 粘贴
x 删除光标所在的字符
D 从光标处删除到行尾
u undo撤销
^r redo重做
r 可以用来修改一个字符
c.进入其他模式
a 进入插入模式
i 进入插入模式
o 进入插入模式(other 另起一行)
A 进入插入模式(跳到行尾)
: 进入末行模式
v 进入可视模式
^v 进入可视块模式
V 进入可视行模式
R 进入替换模式
2.插入模式
可视块模式:(^v 进入可视块模式)
块插入(在指定块前加入字符): 选择块,I 在块前插入字符, ESC
块替换: 选择块,r 输入替换的字符
块删除: 选择块,d | x
块复制: 选择块,y
3.扩展命令模式(末行模式)
a. 保存退出
:10 进入第10行
:w 保存
:q 退出
:wq 保存并退出
:w! 强制保存
:q! 不保存并退出
:wq! 强制保存退出
:x 保存并退出 ZZ
X 用来给文件设置密码
b. 查找替换
:范围 s/old/new/选项
:1,5 s/root/yang/ 从1-5行的root 替换为yang
:5,$ s/root/yang/ $表示最后一行
:1,$ s/root/yang/g = :% s/root/yang/g %表示全文 g表示全局
:% s#/dev/sda#/var/ccc#g
:,8 s/root/yang/ 从当前行到第8行
:4,9 s/^#// 4-9行的开头#替换为空
:5,10 s/./#&/ 5-10前加入#字符 (.整行 &引用查找的内容)
c. 读入文件/写文件(另存为)
:w 存储到当前文件
:w /tmp/aaa.txt 另存为/tmp/aaa.txt
:1,3 w /tmp/2.txt
:r /etc/hosts 读入文件到当前行后
:5 r /etc/hosts 读入文件到第5行后
d. 设置环境
临时设置:
:set nu 设置行号
:set ic 不区分大小写
:set ai 自动缩进
:set list 显示控制字符
:set nonu 取消设置行号
:set noic
永久的环境:
/etc/vimrc 影响所有系统用户
~/.vimrc 影响某一个用户
vim ~/.vimrc
set ic
set nu
使用vi打开多个文档
vi -O 文件路径 文件路径(垂直分割)
vi -o 文件路径 文件路径(水平分割)
按^ww进行切换,qall退出
$ vimdiff /etc/hosts hosts1(用来对比文件的不同)
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 2924854739@qq.com
文章标题:每天一点Linux-04vi编辑器
本文作者:DROBP
发布时间:2019-08-12, 10:05:14
最后更新:2019-08-15, 19:34:45
原始链接:https://DROBP.github.io/2019/08/12/每天一点Linux-04vi编辑器/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。