Linux 09 Vim
参考源
https://www.bilibili.com/video/BV187411y7hF?spm_id_from=333.999.0.0
版本
本文章基于 CentOS 7.6
概述
Vi
Vi 是 Unix 及 Linux 系统下标准的编辑器,老一点的 Linux 用户应该对其都不陌生,它的强大不逊色于任何最新的文本编辑器。
所有的类 Unix 系统都会内建 Vi 文书编辑器,其他的文书编辑器则不一定会存在。
Vim
Vim 是对 Vi 的升级,在已经非常强大的 Vi 的基础上,增加了代码补完、颜色区分、编译及错误跳转等方便编程的功能。
更厉害的是,Vim 搭配插件甚至能作为 IDE 使用,可见其功能之强大,也因此在程序员中特别受欢迎,被广泛使用。
键盘图
Vi / Vim 有非常多的快捷键位操作,能够极大的提高文本编辑效率,以下是其键盘图,供参考使用。

使用
Vim 共有 3 种模式:
- 命令模式(Command mode)
- 输入模式(Insert mode)
- 底线命令模式(Last line mode)
Vim 启动时,默认进入命令模式。此时键盘输入会被 Vim 识别为命令。比如此时按下 i,并不会输入字符 i,而是被当作切换到输入模式的命令。
类似常用的命令如下:
i:切换到输入模式,此时输入会被作为字符输入,可以自由输入,也可以粘贴,按下Esc可退出输入模式切换到命令模式。x:删除光标选中的字符,此时虽然没有切换到输入模式,但文本内容已经被改变了,常用作快捷删除。::切换到底线命令模式,此时最下面的行会显示:,供用户在后面输入命令,常输入wq进行保存并退出(若输入wq!即为强制保存并退出)。
3 种模式的关系可以用下图表示:

示例
使用 Vim 来建立一个名为 sail.txt 的文件
1、初始状态。
[root@sail home]# vim sail.txt

2、按下 i 或 o或 a 进入输入模式,开始编辑。
此时可以发现在左下角状态栏中会出现 –INSERT- 的字样,这就是输入模式的标志。这个时候,除了 Esc 外,其他的按键都视为输入,可以自由编辑。

3、如果已经编辑完毕,接下来就是退出 Vim 了。
4、按下 ESC 按钮,会发现画面左下角的 – INSERT – 不见了,代表又回到了命令模式。
5、按下 :,会发现底部变为了 : ,代表切换到了底线命令模式。

6、在 : 后输入 wq 命令即表示保存并退出 Vim。

这样就完成了文件的新建或编辑。
7、此时再输入 vim sail.txt 即可查看文本内容。

如果需要继续编辑,按下 i 切换到输入模式即可。
Linux 09 Vim的更多相关文章
- Linux vi/vim(转载)
Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主 ...
- Linux中vim的简单配置
本文主要分享Linux中vim的简单配置 ★配置文件的位置 在目录/etc.下面,有个名为vimrc的文件,这就是系统中公共的vim配置文件,对所有用户都开放.而在每个用户的主目录下,都可以自 ...
- Linux下vim文件未正常退出,修复文件
Linux下vim文件未正常退出,会产生一个 .文件名.swp的文件 ls -al ,rm 删掉.swp文件 之后就可以正常使用文件了
- Linux的vim编辑器中的翻页命令
当我们进入Linux的vim编辑器查看脚本时,按上下键查看是不是非常慢?这个时候就要用到我们的翻页快捷键了,快捷键命令如: 整页翻页命令为:Ctrl + f 键 f 的英文全拼为:forward: ...
- linux之vim配置及使用示例
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7056193.html linux之vim配置及使用示例 vi的三种模式: 一 ...
- Linux之Vim学习
Linux之Vim学习 一般模式 光标移动 按键 作用 j或down方向键 向下移动一个字符 k或up方向键 向上移动一个字符 h或left方向键 向左移动一个字符 l或right方向键 向右移动一个 ...
- Linux使用vim进行多文件查找和替换的方法
vim是Linux系统下常用的文本编辑,通过使用多种shell命令能够实现多文件的查找和替换,那么具体会使用到那些命令呢?下面小编就给大家介绍下Linux系统vim多文件查找和替换的方法. 在linu ...
- 【Linux】Linux中VIM编辑器的使用
vim编辑器是我们在Linux中不可或缺的一部分,我们通常会使用它去自定义编辑文本已达到我们的需求,那么vim文本编辑器具体要怎么使用呢.今天跟大家分享一下vim编辑器的使用: vim编辑器模式介绍 ...
- linux 下vim文件乱码 cat文件正常处理方法
linux 下vim文件乱码 cat文件正常处理方法 服务器支持中文字符集,cat和其他查看文件命令现在正常,vim还是出现了中文乱码问题, 1.查看文件编码格式 vim 文件 :set fileen ...
随机推荐
- django框架10
内容概要 ajax结合sweetalert forms组件钩子函数 forms组件字段参数 forms组件字段类型 forms组件源码分析 cookie与session简介 django操作cooki ...
- fpm工具安装
概述 最近在对机房的编译环境做整理,过程曲折而痛苦,记录一下. 之前的一个老项目,在打包的时候用到了一个叫做fpm的工具. 编译环境涉及centos6和centos7,在新的编译环境的过程中,如何安装 ...
- mybatis-plus分页插件
package com.tanhua.server.config; import com.baomidou.mybatisplus.extension.plugins.PaginationInterc ...
- SSH和SCP的使用方法
1.SSH使用方法 ssh 用户名@IP 例: ssh ubuntu@192.168.1.190 最近因为项目需求,需要通过ssh来登录Windows,但是一开始一直无法登录,参考下面这个帖子解决了, ...
- python基础中遇到的问题(TypeError: unhashable type: 'list')
d20220330 #false >>> l=[{i:i+1} for i in [1,2,3]] >>> l [{1: 2}, {2: 3}, {3: 4}] & ...
- TypeScript(6)函数
函数 函数是 JavaScript 应用程序的基础,它帮助你实现抽象层,模拟类,信息隐藏和模块.在 TypeScript 里,虽然已经支持类,命名空间和模块,但函数仍然是主要的定义行为的地方.Type ...
- 使用MySqlBulkLoader批量插入数据
最近在项目中遇到插入几万.几十万.几百万的数据到MYSQL数据库,使用EF插入会发现插入速度非常慢的场景, 数据量非常大时EF插入需要几十分钟,甚至几个小时,这样子的速度肯定不是我们所期望的. 后面经 ...
- 一个紧张刺激的聊天器,要不要进来看看(Python UDP网络模型)
先来哔哔两句:(https://jq.qq.com/?_wv=1027&k=QgGWqAVF) 互联网的本质是什么?其实就是信息的交换.那么如何将自己的信息发送到其他人的电脑上呢?那就需要借助 ...
- Python自动化办公:将文本文档内容批量分类导入Excel表格
序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 它来了,它又来了. 本文实现用Python将文本文件自动保存到Excel表格里面去. 需求 将锦江区.t ...
- SpringBoot项目启动org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException解决方法
将Pom文件中的SpringBoot版本调低即可. 我的是调成了2.5.6