vim编辑器

一、什么是vi

可以理解为windows下面的文本编辑器,比如记事本,比如word文档。
vi编辑器通常被简称为vi,而vi又是visual editor的简称。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制,这是其他编辑程序所没有的。
vi 编辑器并不是一个排版程序,它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。没有菜单,只有命令,且命令繁多。
vi与vim的区别:

vi不显示高亮颜色语法​
vim显示高亮颜色语法。​
其他功能没有什么区别。​
所以在linux系统下,使用vi还是vim取决个人习惯。​
默认vi是安装的 , vim需要通过yum install vim -y

在这里插入图片描述
或者普通模式、编辑模式、末行模式

:wq 保存并退出
:q! 强制退出不保存
:wq! 强制保存退出
:x 等同wq
:q!     强制退出
:wq!    强制写入退出
:set nu 显示行号
:数字  光标跳到数字那行
:set nonu 取消显示行号

二、命令行模式

1、命令行模式下移动光标快捷键:

$光标移动到当前行尾
0或^光标移动到当前行头
gg光标移动到文件首行第一个字符
G光标移动到文件末尾第一个字符
nG光标移动到第n行,1G相当于gg
H光标移动到屏幕最上方那一行第一个字符
M光标移动到屏幕最中间那一行第一个字符
L光标移动到屏幕最下面那一行第一个字符
ctl+f往下翻页
ctl+b往上翻页

2、命令行模式下删除与复制

dd删除光标所在那一行(可以配合p相当于剪切+粘贴)
ndd删除光标所在的向下n行,包括当前行
dG删除光标之后的所有行
yy复制光标所在那一行(换成dd,就相当于剪切)
nyy复制光标及以下的n行

3、命令行模式下粘贴命令

p将已复制的行在光标下一行粘贴
np粘贴n次
P将已复制的行在光标上一行粘贴

4、命令行模式下复原和重做

u还原前一个操作
ctr+r重做上次操作(先有u后有ctr+r)

5、命令行模式下的可视块
按 ctl+v

  • 批量删除
    命令行模式按ctl+v 或者shift+v
    移动光标选择行和列
    按d

  • 批量删除注释
    命令行模式按ctl+v
    移动光标选择行
    按一次d

  • 批量增加注释
    命令行模式按ctl+v
    移动光标选择行
    按shift+i
    写入#号
    连续按两下esc

6、查找想要的内容
命令行模式下,输入/name ,按回车,就会把文件中所有包含name的地方高亮显示,按n(next)自动跳下一个,按N,往上跳。


三、末行模式

:wq 保存并退出
:q! 强制退出不保存
:wq! 强制保存退出
:x 等同wq
:q!     强制退出
:wq!    强制写入退出
:x 先保存,在退出
zz 保存退出

:set nu 显示行号
:数字  光标跳到数字那行
:set nonu 取消显示行号

:w将文件存入/写入磁盘
:q退出不保存
:wq退出保存
:q!强制退出
:wq!强制保存退出
:set nu显示行号
:8光标跳到数字那行
:set noun取消显示行号
:set ai /:set noai自动缩进/取消缩进
:set ic / :set noic不区分大小写/区分大小写

例:将文件中的所有love改为LOVE,如果想忽略大小写,只需要在g后面加 i
1.
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4、      :3,$ s/love/LOVE/g  表示第三行到最后一行
5、      :,3 s/love/LOVE/g 不指定开头就从第一行
6、      :% s/^love/LOVE/  只换以love开头的行
7、      :% s/love$/LOVE/  只替换以love结尾的行
8、      :1,5 w /root/a.txt # 表示把1到5行内容写入/root/a.txt下的文件内
9、      :r /root/a.txt # 把/root/a.txt文件内容读到光标所在的行后面
c. 读入文件/写文件
        :w
        :w /aaa.txt                         另存为/aaa.txt  
        :1,3 w /2.txt
        :1 w! /root/ccc.txt  如果目标文件已经存在则需要加!号
        :r /etc/hosts
​
 d. 设置环境     
     临时设置:       
     :set nu      设置行号      
     :set ic      不区分大小写
     :set ai      自动缩进
     :set list
     :set nonu    取消设置行号     
     :set noic
     :set paste  # 取消特殊的缩进
​
     永久的环境:
     /etc/vimrc                      影响所有系统用户
     ~/.vimrc                    影响某一个用户
     # vim ~/.vimrc  # 在家目录下新增一个文件,输入下述内容
     set ic
     set nu

四、同时编辑多个文件


#1、
vim -o 文件1 文件2  # 水平分隔
vim -O 文件1 文件2   # 垂直分隔
使用ctrl + ww切换
​
#2、
vim -p /etc/hosts /etc/grub.conf      
使用 ^PgUp, ^PgDn切换
# 相同文件之间差异对比,通常用于对比修改前后的差异。
    
diff         #文件对比(No)
​
vimdiff         #以vim方式打开两个文件对比,高亮显示不同的内容
# vim -O /etc/hosts /etc/grub.conf      ^w 按两次切换
# vimdiff grub.conf /etc/grub.conf      对比文件,^w 按两次切换       
# vim -p /etc/hosts /etc/grub.conf      ^PgUp, ^PgDn​
#diff -u a.txt b.txt > patch.diff # 做补丁,谁在后面就以谁为准 打补丁的意思是把要打的文件改成后面的内容
#patch a.txt patch.diff     # 打补丁

2.vim执行过程
在这里插入图片描述

Vim非正常退出=
(1)、模拟故障: 编辑文件的时候断开连接即可(断网或断电) 重新连接服务器 再次进行编辑文件
(2)、故障报错: Found a swap file by the name “.vim.log.swp” Swap file “.vim.log.swp” already exists
(3)、故障解决: 删除临时文件或者先恢复内容再删除 使用-r选项进行恢复

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值