Day07-文件的编辑VIM
1.Vim的作用
在Linux中用来编辑文件
2.vi与vim的区别
二者本质上没有区别都是编辑文件
最小安装系统没有vim需要安装,yum install vim -y
vim带有语法检测和语法高亮
3.如何使用vim,vim的四种模式
[root@oldboy ~]# vim test.txt
#编辑文件并进入普通模式
1.默认打开文件处于普通模式
2.进入编辑模式按a、i、o、A、I、O
3.从编辑模式回到普通模式按ESC键
4.在普通模式输入“:”或者“/”可进入命令模式,进行文件的保存退出
5.在vim中无法直接从比那及模式直接到命令模式
vim普通模式
#命令光标跳转
G #光标跳转至文件末端
gg #光标跳至文件顶端
Ngg #光标跳至第N行
$ #光标跳至当前所在行的尾部
^/0 #光标跳至当前所在行的首部
#翻页
ctrl+b #向上翻页
ctrl+f #向下翻页
#复制粘贴
yy #复制当前光标所在行
5yy #复制光标所在行及往下的4行
p(小) #粘贴至当前光标的下一行
P(大) #粘贴之当前光标的上一行
#删除、剪切、撤销
dd #删除当前光标所在的行
5dd #删除当前光标所在的行及往下4行
dG #删除光标所在的行及往后所有的行
D #删除光标所在行及往后所有内容(当前行)
x #删除当前光标往后的字符
u #撤销上一次的操作
dd & p #剪切,在粘贴
#替换
r #替换当前光标标记的单个字符
vim编辑模式
从普通模式进入到编辑模式
i #进入编辑模式,光标不动
a #进入编辑模式,光标往后一位
o #进入编辑模式,光标向下添加一行空白行
I #进入编辑模式,光标跳至当前行头部
A #进入编辑模式,将光标移至当前行尾部
O #进入编辑模式,光标向上添加一行空白行
vim命令模式
主要用于用于保存文件,搜索,退出,加行号和替换
#文件的保存与退出
:w 保存当前状态
:q 退出当前文档(文件保存后才能退出)
:wq 保存并退出
:w! 强制保存当前状态
:q! 强制退出当前文档,不会修改内容
:wq! 强制保存并退出
:x 先保存,再退出
ZZ 保存并退出 shift+zz
:n 跳至第n行
#文件内容查找
/string #需要所搜的内容
n 在搜索到的内容依次向下查找
N 在搜索到的内容依次向上查找
#文件内容体替换
:1,5s#bin#test#g #替换1-5行中包含bin的内容为test
:%s#bin#test#g #替换全文中包含bin的内容为test
#文件内容另存
:w /root/test.txt #将所有内容另存为/root/test.txt中
vim视图模式
主要进行批量操作
ctrl+v 进入可视块模式,选择需要注释的行
1.插入:按shift+i进入编辑模式,按#,结束按ESC结束
2.删除:选中内容之后按d删除
3.替换:选中需要替换的内容,按一下r键,输入要替换的内容
shift+v 进入可视行模式,选中整行内容
1.复制:选中行内容后按y键可复制
2.删除:选中行内容后按d键删除
vim扩展知识
1.环境变量临时生效
:set nu #显示行号
:set ic #忽略大小写,在搜索时可用
:set ai #自动缩进
:set list #显示制表符
:set no[nu|ic|ai...] #取消临时设定的变量
2.环境变量永久生效。~/.vimrc 个人环境变量(优先级高) /etc/vimrc 全 局环境变量
# vim ~/.vimrc #当下次再打开文件自动显示行号并忽略大小写
set nu
set ic
#如果个人vim环境没有配置, 则使用全局vim环境变量配置。 #如果个人vim环境和全局环境变量产生冲突, 优先使用个人vim环境变量。
3.同时编辑多个文件
vim -o file1 file2 #水平分割
vim -O file1 file2 #垂直分割
#ctrl+ww 文件间切换
4.相同文件之间差异对比,用于修改后
diff #文件对比
vimdiff #以vim方式打开两个文件对比,高亮显示不同的内容
5.如果vim非正常退出(断开连接,ctrl+z)挂起或强制退出终端没关闭vim后
#假设打开filename文件被以外关闭,需要删除同文件名的.swp文件即可 解决
rm -f .filename.swp