每天一点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" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏