自动化运维之vim使用(三)

1,093 阅读5分钟

" 一个人一口酒一口烟,望着出租屋的灯,灯光其实也没有那么刺眼"

vim编辑器

运维工作中最基础的工作就是要修改与设定重要服务的配置文件,因此学会一种文件编辑器非常重要。在linux系统中都会内置一个编辑软件vi(visual editor)。

一、vim编辑器概述

1、vi

Visual editor编辑器通常备简称为vi,是linux系统中内置的一个功能非常强大的编辑器软件,就像window是中的notepad(记事本)一样,但是功能比notepad强大的多。

2、vi与vim

vim是vi的加强版。增加了高亮显示,查找高亮等功能,比vi使用更便捷高效。

3、vim学习重点

模式切换、复制、剪切、粘贴、删除、查找、替换等

二、vim编辑器三种模式

1、三种模式

命令模式:控制光标移动,可对文本进行删除、复制、粘贴等操作

末行模式:保存、替换、退出等操作

编辑模式:文本录入

2、模式切换

3、vim打开文件的四种方式

重点掌握前三种

1、第一种

# vim 文件路径 作用:打开指定文件,如果文件不存在,自动创建该文件(保存之后才创建)

[root@WangCaichen ~]# vim readme.txt

提前补充:如何退出vim编辑器

:q,在按回车。含义::表示进入末行模式,q代表退出指令,回车执行指令。(注意必须是英文输入法状态,且区分大小写)

2、第二种

vim +数字 文件路径 作用:打开指定文件,并且将光标移动到指定行

[root@WangCaichen ~]# vim +3 anaconda-ks.cfg

3、第三种

vim +/关键字 文件路径 作用:打开指定文件,高亮显示关键字,光标移动到关键字第一次出现位置所在行,第二次打开这个文件,光标会移动到关键字第二次出现所在行,以此类推。这是vim比vi多的功能。

[root@WangCaichen ~]# vim +/part anaconda-ks.cfg

4、第四种

vim 文件路径1 文件路径2 文件路径3 … 作用:同时打开多个文件

[root@WangCaichen ~]# vim hello.txt readme.txt
多文件编辑的按键 作用
:n 编辑下一个文件
:N 编辑上一个文件
:files 列出目前这个vim开启的所有文件

三、命令模式

1、进入命令模式

运行vim编辑器后,默认就是”命令模式“

2、命令模式常用命令

命令 作用
dd 删除(剪切)光标所在整行
5dd 删除(剪切)从光标处开始的5行
yy 复制光标所在整行
5yy 复制从光标处开始的5行
p 将之前删除(dd)或复制(yy)过的数据粘贴到光标后
/字符串 在文本中从上至下搜索该字符串
?字符串 在文本中从下至上搜索该字符串
n 显示搜索命令定位到的下一个字符串
N 显示搜索命令定位到的上一个字符串
u 撤销上一步操作,可以对比Ctrl + z
ctrl + r 恢复(取消撤销的操作,r:redo)可以对比Ctrl+y
gg 光标移动到首行行首
G 光标移动到末行行首

四、末行模式

1、进入末行模式

进入方式:在命令模式下,按下: 进入末行模式

退出方式:

  1. 按下Esc
  2. 连按2次Esc快速退出
  3. 删除末行模式下全部输入的字符

2、末行模式常用命令

命令 作用
:w 保存
:q 退出
:q! 强制退出(放弃对文本内容的修改)
:wq 保存退出
:set nu 显示行号
:set nonu 不显示行号
:整数 跳转到该行
:x 保存退出。和wq区别是:如果文件没有修改,wq修改时间会更新,x只在文件修改的情况下才更新文件修改时间

注意:

在命令行模式与末行模式中,所有的命令都区分大小写,且必须是英文输入法状态

五、编辑模式

1、进入编辑模式:

在命令模式下,

i:insert, 在光标所在字符前开始插入

a:after,在光标所在字符串后开始插入

o:在光标所在行的下面另起一新行插入

注意:

编辑模式和末行模式之间不能直接进行切换,需要通过命令模式转换

2、退出编辑模式

退出方式:按下Esc,退回到命令模式

六、实用功能

1、vim配置显示行号

1、临时显示

[root@WangCaichen ~]# vim readme.txt

2、针对用户的个人配置

# 在用户家目录配置.vimrc,如果没有直接创建
[root@WangCaichen ~]# vim ~/.vimrc
# 添加以下命令,保存退出
set nu

3、全局配置

# 打开vim全局配置文件
[root@WangCaichen ~]# vim /etc/vimrc
# 在最后一行添加以下命令,保存退出
set nu

2、异常退出

1、什么是异常退出

在编辑文件之后没有正常得去保存退出,而是直接退出终端的情况,会出现下面的效果:

2、异常退出解决

将交换文件删除

[root@WangCaichen ~]# rm -f .readme.txt.swp

3、别名机制

1、创建别名

作用:创建属于自己的命令

配置文件:~/.bashrc

# 打开.bashrc文件
[root@WangCaichen ~]# vim .bashrc
# 添加一个cls别名,用于清屏## 

提示:

起得别名,一定不要是系统已经支持的命令

2、让别名生效

[root@WangCaichen ~]# source ~/.bashrc

3、课堂练习

给root用户创建一个指令cout,实现运行cout之后统计当前目录下有多少个文档(包含隐藏文档)

[root@WangCaichen ~]# ls -a | wc -l
                                       _____           _    _____   _
                                      / ____|         (_)  / ____| | |
                                     | |        __ _   _  | |      | |__     ___   _ __
                                     | |       / _` | | | | |      | '_ \   / _ \ | '_ \
                                     | |____  | (_| | | | | |____  | | | | |  __/ | | | |
                                      \_____|  \__,_| |_|  \_____| |_| |_|  \___| |_| |_|
                                                                                         
                                                                                         

好了各位,以上就是这篇文章的全部内容了,能看到这里人啊,都是人才。

如果这个文章写得还不错,觉得「王采臣」我有点东西的话 求点赞👍求关注❤️求分享👥 对耿男我来说真的非常有用!!!

白嫖不好,创作不易,各位的支持和认可,就是我创作的最大动力,我们下篇文章见!

王采臣 | 文 【原创】 如果本篇博客有任何错误,请批评指教,不胜感激 !微信公众号: