个人博客网:https://wushaopei.github.io/    (你想要这里多有)

1、简介

Linux系统环境下的一款非常重要的文本编辑工具,我们在Linux环境下几乎所有的文本文件编辑工作都是靠它。

可能你还听说过VI,嗯,VIM是VI的升级版。

2、VIM编辑器的三种工作模式

3、浏览文件内容操作

  • 上下左右移动光标

h:左

j:下

k:上

l:右

立即移动到页头:gg

移动到页尾:shift+g

移动到目标行

第一步:输入数字N

第二步:shift+g

移动到行头

方式一:shift+^

方式二:数字0

移动到行尾:shift+$

向下移动n行:n<Enter>

向下翻页:Ctrl+f

向上翻页:Ctrl+b

向下翻页一半:Ctrl+d

向上翻页一半:Ctrl+u

将光标移动到下一行:+

将光标移动到上一行:-

横向移动光标

<space>:向右移动一列

n<space>:向右移动n列

移动到屏幕第一行的第一个字母:H

移动到屏幕中间行的第一个字母:M

移动到屏幕最后一行的第一个字母:L

4、编辑文件内容操作

删除当前行:dd

从当前行开始,删除n行:dnd

从当前行开始删除n行:ndd

从第一行删除到当前行:d1G

从当前行删除到最后一行:dG

从光标当前位置删除到行末:D或d$

撤销刚才的操作:u

重做刚才的操作:Ctrl+r

复制当前行:yy

复制n行:yny

复制从第一行到当前行的所有行:y1G

复制从当前行到最后一行的所有行:yG

复制从当前行的第一个非空格字符到当前光标位置:y^

复制从当前行的第一个字符到当前光标位置:y0

从光标当前位置开始复制到本行结束,包括空格:y$

粘贴:p

如果复制的是一整行,那么粘贴到下一行

如果复制的是一行中的一部分,那么粘贴到当前行

粘贴:P

如果复制的是一整行,那么粘贴到上一行

如果复制的是一行中的一部分,那么粘贴到当前行

删除光标后的一个字母:x

删除光标前的一个字母:X

向后连续删除n个字符:nx

向前连续删除n个字符:nX

将本行从第一个非空格字符开始到当前光标前的字符删除:d^

将本行第一个字符,不管是不是空格,到当前光标位置前的字符删除:d0

删除从光标位置开始的一个单词:dw

单词边界:空格或标点符号

复制从光标位置开始的一个单词:yw

替换光标位置的一个字符:r

合并当前行与下一行:J

合并n行:nJ

5、进入编辑模式

i:在当前光标前,以插入模式进入

I:在当前行开始位置,以插入模式进入

a:在当前光标后,以插入模式进入

A:在当前行末尾,以插入模式进入

o:从当前光标的下一行以插入模式进入

O:从当前光标的上一行以插入模式进入

R:从当前光标位置以替换模式进入

s:删除当前光标所在位置的字符并进入插入模式

S:删除当前行并进入插入模式

6、指令操作

保存 :w

强制保存 :w!

但是还要看是否具备权限,如果没有权限加了强制也不一定能保存进去

退出VIM :q

如果有未保存的修改则无法退出

强制退出VIM :q!

未保存的修改将会被丢弃

保存退出 :wq或ZZ

强制保存退出 :wq!

另存为 :w [fileName]

追加其他文档内容到当前行的下一行 :r [fileName]

暂时离开VIM执行一个Linux命令,再按任意键返回 :! [Linux命令]

  • :! ls -lz

显示行号 :set nu

隐藏行号 :set nonu

  • 查找方式1 /被查找词

n:下一个

shift+n:上一个

  • 查找方式2 ?被查找词

n:上一个

shift+n:下一个

  • 替换 :

%s/old字符/new字符/g

7、区块模式

进入区块模式:Ctrl+V

按上下左右键划定执行区块操作的范围

进入输入模式:Shift+i

开始输入

Esc

8、VIM键盘图

Linux (五) VIM编辑器的更多相关文章

  1. Linux的vim编辑器中的翻页命令

    当我们进入Linux的vim编辑器查看脚本时,按上下键查看是不是非常慢?这个时候就要用到我们的翻页快捷键了,快捷键命令如: 整页翻页命令为:Ctrl + f 键   f 的英文全拼为:forward: ...

  2. 【Linux】Linux中VIM编辑器的使用

    vim编辑器是我们在Linux中不可或缺的一部分,我们通常会使用它去自定义编辑文本已达到我们的需求,那么vim文本编辑器具体要怎么使用呢.今天跟大家分享一下vim编辑器的使用: vim编辑器模式介绍 ...

  3. Linux中vim编辑器常用操作技巧

    Normal 0 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-styl ...

  4. linux vi/vim 编辑器学习总结

    linux vi/vim 编辑器学习总结 很多时候我们开发人员不可避免的会涉及到项目部署,这个时候使用的就不是我们所熟知的 Windows 和 Mac OS 操作系统了,而是类 Unix 系统.项目部 ...

  5. Linux中vim编辑器 的 快捷键 --- 常用 的 都比较全

    Linux中vim编辑器的功能非常强大,许多常用快捷键用起来非常方便,这里将我学vim入门时学的一些常用的快捷键分享给大家一下,希望可以帮助你们. 这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到 ...

  6. linux下vim编辑器查找 关键字

    在  linux  vim 编辑器 下查找   关键字 方法[一] 1?short_open_tag : 它的意思是vim 打开文件的第一行 ? : 它的意思是反向查找 short_open_tag ...

  7. 【Linux】Vim编辑器-批量注释与反注释

    [-] vim编辑器---批量注释与反注释 方法一 块选择模式 插入注释 取消注释 方法二 替换命令 批量注释 取消注释 实例演示   vim编辑器---批量注释与反注释 在使用vim编写代码的时候, ...

  8. Linux的vim编辑器

    vim编辑器常用的三种模式 vim /文件路径 进入编辑器,编辑该文件 例:vim /etc/passwd 命令行模式:在编辑器中直接输入命令 dd:删除光标所在的一行 ndd:删除光标所在的向下的n ...

  9. Linux vi/vim编辑器

    所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...

随机推荐

  1. SSM的医院管理系统录像

    视频观看地址:http://mp.toutiao.com/preview_article/?pgc_id=6806135073323090444

  2. # C#学习笔记(一)——准备工作

    C#学习笔记(一)--准备工作 目录 C#学习笔记(一)--准备工作 1.1 下载安装.NET框架 1.2 创建源代码 1.3 一些基本名称 1.4 简单的命名建议 1.1 下载安装.NET框架 .N ...

  3. 一文教你快速搞懂速度曲线规划之S形曲线(超详细+图文+推导+附件代码)

    本文介绍了运动控制终的S曲线,通过matlab和C语言实现并进行仿真:本文篇幅较长,请自备茶水: 请帮忙点个赞

  4. Linux高性能服务器技术总结

    文章目录 1 服务器简介 2 I/O复用技术 2.1 循环方式 2.2 select 方式 2.3 poll方式 2.4 epoll 方式 3 多线程方式 4 CPU多核并行计算 5 深度分析内核性能 ...

  5. python --函数学习之全局变量和局部变量

    定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域. 局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序内访问. 在调用函数的时候,所有在函数内声明的变量名称都被加到作用 ...

  6. android学习流程确立

    也是摘抄自网上,先打个基础吧,以后有更新,再更改. 确定学习路线:向着中级工程师奋斗Android入门的时候,需要有一本入门书,好好学习书中的内容,同时花一年时间把Android官方文档中的train ...

  7. java ->多线程_线程池

    线程池概念 线程池,其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多资源. 我们详细的解释一下为什么要使用线程池?(程序优化) 在jav ...

  8. 【雕爷学编程】MicroPython动手做(06)——零基础学MaixPy之单目摄像头

    配套 OV2640摄像头:200W像素通用24P摄像头具有200万像素(1632x1232像素),其体积小.工作电压低,提供单片UXGA摄像和影像处理器的所有功能.通过SCCB总线控制,可以输出整帧. ...

  9. webpack指南(三)缓存

    缓存 把 /dist 目录中的内容部署到服务器上,客户端(通常是浏览器)就能够访问网站此服务器的网站及其资源.而通过网络获取资源是比较耗时的,这就是为什么浏览器要使用缓存这种技术.可以通过命中缓存,以 ...

  10. chrome "items hidden by filters"

    今天更新chrome 后遇到console不能显示errors的问题,折腾一番后发现在console的Default levels中选择Default即可.