『学了就忘』vim编辑器基础 — 94、vim编辑器介绍
1、vim编辑器简介
vim是一个全屏幕纯文本(绘个表格或者插个图片就不要想了)编辑器,是vi编辑器的增强版,我们主要讲解的是vim编辑器。
vim编辑器的主要优势就是不需要鼠标的介入就可以完成所有的编辑操作。如果你非常熟练的使用vim编辑器,编辑文档时要比鼠标介入操作的快多了。
在使用vim编辑器的时候可以利用别名让输入vi命令的时候,实际上执行vim编辑器,例如:
# 定义别名
[root@localhost ~]# alias vi='vim'
注意:这样定义的别名是临时生效,如果需要永久生效,请放入环境变量配置文件
~/.bashrc。
vim编辑器对比vi编辑器所增强的功能之一,就是文件内容有颜色的提示,方便我们识别和区分内容和错误(颜色主要的作用是排错)。
使用vi编辑器查看~/.bashrc文件。
执行命令:[root@localhost ~]# vi .bashrc
如下图所示:

使用vim编辑器查看~/.bashrc文件。
执行命令:[root@localhost ~]# vim .bashrc
如下图所示:

2、vim的工作模式
使用vim编辑文件时,存在 3 种工作模式,分别是命令模式、输入模式和编辑模式(末行模式),这 3 种工作模式可随意切换。
如下图所示:

(1)命令模式
在Shell提示符后输入命令vim + 文件名,进入vim编辑器,此时就处于命令模式下。
提示:
vim + 文件名命令,如果文件名存在,则直接打开文件显示内容。如果文件名不存在,就新建一个文件。vim后边的文件名无论有没有都不会报错,都能正确执行。
此时,从键盘上输入的任何字符都被作为编辑命令来解释,例如,a(append)表示附加命令,i(insert)表示插入命令等。
在命令模式下,从键盘上输入的任何字符都被当作编辑命令来解释,而不会在屏幕上显示。
另外,在命令模式下输入的字符(即vim命令)并不在屏幕上显示出来例如,输入i,屏幕上并无变化,但通过执行i命令,编辑器的工作方式却发生变化:由命令模式变为输入模式。
如果输入的字符不是vim的合法命令,则机器发出“报警声”。
(2)输入模式
输入模式用于字符编辑。在命令模式下输入i、a、o等命令后进入输入模式,此时从键盘上输入的所有字符都被都被vim编辑器插入到正在编辑的缓冲区中,被当做该文件的内容显示在屏幕上。

例如,在命令方式下输入字母i,进到输入模式,然后再输入i,就在屏幕上相应光标处添加一个字母i。
按Esc键可从输入模式返回到命令模式。如果已在命令模式下,那么按下Esc键就会发出“嘟嘟”声。为了确保用户想执行的vim命令是在命令模式下输入的,不妨多按几下Esc键,听到嘟声后再输入命令。
在实际工作中需要进入输入模式,你用哪一个命令都行。主要用于文本编辑,和记事本类似,输入数据就好。
(3)最后行模式(末行模式)
在命令模式下,按:键进入末行模式,此时vim编辑器会在屏幕的底部显示:符号,作为末行模式的提示符,等待用户输入相关命令。命令是以Enter键或者ESC键结束的命令行,命令执行完毕后,vim编辑器自动回到命令模式。
常用末行模式的命令如下:
:w:保存不退出。
:w 新文件名:把文件另存为新文件。
如::w /root/abc。:q:不保存退出。:wq:保存退出。:!:强制。
:q!:强制不保存退出,用于修改文件之后,不保存数据退出。所有用户都可以执行的。
:wq!:虽制保存退出,当文件的所有者或者root用户,对文件没有写权限的时候,强制写入数据使用。(只有文件的所有者或者root用户可执行)
注意以上两个命令的区别。
『学了就忘』vim编辑器基础 — 94、vim编辑器介绍的更多相关文章
- 『学了就忘』Linux系统管理 — 81、进程管理介绍
目录 1.进程与线程的概念 2.什么是进程管理 3.进程管理的作用 4.Linux进程的几种状态 5.进程与线程的关系 (1)线程与进程的关系 (2)总结 1.进程与线程的概念 来源百度百科: 进程( ...
- 『学了就忘』vim编辑器基础 — 96、末行模式中的相关命令
目录 1.在文档中显示行号 2.是否显示文档内容相关颜色 3.是否将查找的字符串高亮显示 4.是否显示右下角的状态栏 5.是否在左下角显示如"--INSERT--"之类的状态栏 6 ...
- 『学了就忘』Linux权限管理 — 56、不可改变位权限(chattr)
目录 1.命令格式 2.查看文件系统属性chattr权限 3.示例 文件系统属性chattr权限,也叫不可改变位权限,该权限没有风险,但是他能限制root用户. 1.命令格式 [root@localh ...
- 『学了就忘』vim编辑器基础 — 95、命令模式中的相关命令
目录 1.移动光标操作 2.删除或剪切操作 3.复制操作 4.撤销操作 5.替换操作 6.补充一个知识点 命令模式中的命令主要取代的是Linux系统中鼠标的操作. vim编辑器的快捷键一般都集中在命令 ...
- 『学了就忘』vim编辑器基础 — 97、vim使用技巧
目录 1.在vim中导入其他文件内容或命令结果 (1)导入其他文件内容 (2)在vim中执行系统命令 (3)导入命令结果 2.设定快捷键 3.字符替换 4.多文件打开 vim使用技巧,就是vim编辑器 ...
- 『学了就忘』Linux用户管理 — 52、用户组管理相关命令
目录 1.添加用户组 2.删除用户组 3.把用户添加进组或从组中删除 4.有效组(了解) 1.添加用户组 添加用户组的命令是groupadd. 命令格式如下: [root@localhost ~]# ...
- 『学了就忘』Linux权限管理 — 54、sudo授权
目录 1.什么是sudo授权 2. sudo授权说明 3.sudo命令的使用 示例1 示例2 示例3 1.什么是sudo授权 在Linux系统中,/sbin/和/usr/sbin/两个目录中的命令只有 ...
- 『学了就忘』Linux文件系统管理 — 64、磁盘配额的配置步骤
目录 1.手工建立一个5GB的分区 2.建立需要做限制的三个用户 3.在分区上开启磁盘配额功能 4.建立磁盘配额的配置文件 5.开始设置用户和组的配额限制 6.启动和关闭配额 7.磁盘配额的查询 8. ...
- 『学了就忘』Linux系统定时任务 — 89、任务调度工具anacron
目录 1.任务调度工具anacron介绍 2.新旧版本Linux中anacron工具的区别 3./etc/cron.{daily,weekly,monthly}目录说明 4.anacron命令 5./ ...
随机推荐
- 【模板】二分图最大匹配(匈牙利算法)/洛谷P3386
题目链接 https://www.luogu.com.cn/problem/P3386 题目大意 给定一个二分图,其左部点的个数为 \(n\),右部点的个数为 \(m\),边数为 \(e\),求其最大 ...
- 【模板】无源汇有上下界可行流(网络流)/ZOJ2314
先导知识 网络最大流 题目链接 https://vjudge.net/problem/ZOJ-2314 题目大意 多组数据,第一行为数据组数 \(T\). 对于每一组数据,第一行为 \(n,m\) 表 ...
- c#表中信息点击跳转
OnRowCommand="gridInfoData_RowCommand" <Columns> <asp:ButtonField HeaderText=&quo ...
- LeetCode最富有客户的资产总量
最富有客户的资产总量 题目描述 给你一个 m * n 的整数网格 accounts,其中 account[i][j]是第 i 位客户在第 j 家银行托管的资产数量.返回最富有客户所拥有的资产总量. 客 ...
- 【讨论】APP的免填邀请码解决方案
00x0 具体需求 app中已注册的用户分享一个含有邀请码的二维码,分享到朋友圈新用户在朋友圈打开这个这个链接下载app.新用户安装后打开app后就自动绑定邀请码要求用户不填写任何东西 朋友老板出差给 ...
- CR LF 的含义
可以参考: 转载于:https://www.cnblogs.com/babykick/archive/2011/03/25/1995977.html
- 【Java 泛型】之 <? super T> 和<? extends T> 中 super ,extends如何理解?有何异同?
Java 泛型 <? super T> 和<? extendsT>中 super ,extends怎么 理解?有何不同? 简介 前两篇文章介绍了泛型的基本用法.类型擦除以及泛型 ...
- Vue重要知识
Event Bus 总线 Vue中的EventBus是一种发布订阅模式的实践,适用于跨组件简单通信. Vuex也可以用来组件中进行通信,更适用于多组件高频率通信. 使用方式: 1.把Bus注入到Vue ...
- 使用Spring JDBC连接数据库(以SQL Server为例)
一.配置Spring JDBC 1.导入相关jar包 (略) 2.配置文件applicationContext.xml <?xml version="1.0" encodin ...
- ANTLR 相关术语
下面介绍很多重要的与语言识别相关的术语. 语言(Language) A language is a set of valid sentences 一门语言是一个有效语句的集合. Sentences a ...