Linux重器 vi编辑器
1.创建练习文件
[root@tianyun ~]# ll -a > list.txt
文件编辑器 gedit
文件编辑器 vi, vim, nano
vi编辑器工作模式
命令模式:
- 光标定位
h j k l
0 $
gg G
3G 进入第三行
/string (n N 可以循环的) 快速定位到某一行
/^d
/txt$
- 文本编辑(少量)
y 复制 yy 3yy ygg yG (以行为单位)
d 删除 dd 3dd dgg dG (以行为单位)
p 粘贴
x 删除光标所在的字符
D 从光标处删除到行尾
u undo撤销
^r redo重做
r 可以用来修改一个字符
- 进入其它模式
a 进入插入模式
**** i 进入插入模式
**** o 进入插入模式
**** A 进入插入模式
: 进入末行模式(扩展命令模式)
**** v 进入可视模式
**** ^v 进入可视块模式
**** V 进入可视行模式
**** R 进入替换模式
插入模式:
^P
可视块模式:
块插入(在指定块前加入字符): 选择块,I 在块前插入字符, ESC
块替换: 选择块,r 输入替换的字符
块删除: 选择块,d | x
块复制: 选择块,y
扩展命令模式:
a. 保存退出
:10 进入第10行
:w 保存
:q 退出
:wq 保存并退出
:w! 强制保存
:q! 不保存并退出
:wq! 强制保存退出
:x 保存并退出 ZZ
查找替换
:范围 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前加入#字符 (.整行 &引用查找的内容)
读入文件/写文件(另存为)
:w 存储到当前文件
:w /tmp/aaa.txt 另存为/tmp/aaa.txt
:1,3 w /tmp/2.txt
:r /etc/hosts 读入文件到当前行后
:5 r /etc/hosts 读入文件到第5行后
设置环境
- 临时设置:
:set nu 设置行号
:set ic 不区分大小写
:set ai 自动缩进
:set list 显示控制字符
:set nonu 取消设置行号
:set noic
- 永久的环境: 修改vim环境配置文件
/etc/vimrc 影响所有系统用户
~/.vimrc 影响某一个用户
#vim ~/.vimrc
set ic
set nu
扩展
# vim -O /etc/hosts /etc/hostname ^ww切换 qall同时关闭两个
-o两个界面上下呈现
# cp /etc/hosts hosts1
# vimdiff /etc/hosts hosts1
网友评论