01前言

在Linux系统中会有很多的文件信息,这些文件的内容如果需要编辑,就必须借助vi或vim编辑命令。

vi是Linux命令行界面下的重要文字编辑器。vim是vi命令的增强版。

【语法格式】

vim [option] [file]
vim [选项] [文件或目录]

02 vim的三种模式

  1. 普通模式

    用vim命令打开一个文件后,默认状态就是普通模式。在该模式中,不能进行编辑输入操作,但可以移动光标,也可以执行一些操作命令进行删除、复制、粘贴等工作。
  2. 编辑模式

    在普通模式中,可以通过按i、I、o、O、a、A、r、R、s、S等字母进入编辑模式,进而可以执行录入文字等编辑操作。

    确定文件是否处于编辑模式的状态有一个显著的特征,就是在窗口左下角有“--INSERT--”的标记。
  3. 命令模式

    在普通模式下,输入:/?时,光标会自动定位在哪一行。再该模式中,可以执行保存、退出、搜索、替换、显示引号等相关操作。

03 vim快捷操作技巧

3.1 光标快速移动快捷方式

序号 操作技巧 解释说明
G 快速切换光标到底行
gg 快速切换光标到首行
ngg
nG
(n为具体行数)
快速切换光标到指定行
0
^
切换光标到单行行首
$ 切换光标到单行行尾

3.2 快速编辑文本内容信息

序号 操作技巧 解释说明
yy 复制单行内容
nyy
(n为具体行数)
复制多行内容
p 粘贴一次内容
np
(n为具体行数)
粘贴多次内容
dd 删除一行内容(实际为剪切操作)
ndd
(n为具体行数)
删除多行内容(实际为剪切操作)
dG 删除光标位置到最后一行所有内容
: s#要替换的信息#替换成的信息s#g 单行信息替换
:n,n#要替换的信息#替换成的信息#g
(n为行数区间)
指定行信息替换
:%s#要替换的信息#替换成的信息#g 全文本替换

3.3 底层模式操作配置指令

序号 操作技巧 解释说明
:set nu 显示文件内容行号
:set nonu
u 进行操作撤销
CTRL+r 取消操作撤销
# 单行注释
①CTRL+v
②移动光标
③Shift+i
④#
⑤Esc
批量注释
①CTRL+v
②移动光标
③d
批量取消注释

vi/vim系统编辑命令使用技巧的更多相关文章

  1. vi/vim基本使用命令

    vi/vim基本使用命令 一.总结 一句话总结:1.记住三种模式:命令行模式.插入模式.底行模式:2.记住两个按键功能:i和esc 二.vi/vim基本使用命令 vi/vim 基本使用方法本文介绍了v ...

  2. vi/vim 光标移动命令(转载)

    转载至:https://www.cnblogs.com/Jacklovely/p/6015037.html vi/vim 光标移动命令 移动光标上:k nk:向上移动n行 9999k或gg可以移到第一 ...

  3. vi/vim 光标移动命令

    vi/vim 光标移动命令 移动光标上:k nk:向上移动n行 9999k或gg可以移到第一行 G移到最后一行下:j nj:向下移动n行左:h nh:向左移动n列右:l nl:向右移动n列 w:光标以 ...

  4. VIM编辑命令的技巧

    vim 选择文本,删除,复制,粘贴   文本的选择,对于编辑器来说,是很基本的东西,也经常被用到,总结如下: v    从光标当前位置开始,光标所经过的地方会被选中,再按一下v结束. V    从光标 ...

  5. $Linux vi/vim编辑器常用命令与用法总结 (Markdown编辑版)

    vi/vim是什么? Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便.vi ...

  6. Linux vi/vim编辑器常用命令与用法总结

    (一)vi/vim是什么?Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便. ...

  7. Linux环境下vi/vim编辑器常用命令

    使用vi文本编辑器 配置文件是Linux系统中的显著特征之一,其作用有点类似于Windows系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式.那么如何使用Linux字符操作界 ...

  8. vi/vim 查找替换命令

    vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询.    :s/vivian/sky/ 替换当前行第一个 vivian ...

  9. vi/vim复制粘贴命令

    1. 选定文本块.使用v进入可视模式,移动光标键选定内容. 2.复制的命令是y,即yank(提起) ,常用的命令如下:     y      在使用v模式选定了某一块的时候,复制选定块到缓冲区用:   ...

随机推荐

  1. 循序渐进VUE+Element 前端应用开发(20)--- 使用组件封装简化界面代码

    VUE+Element 前端应用,比较不错的一点就是界面组件化,我们可以根据重用的指导方针,把界面内容拆分为各个不同的组合,每一个模块可以是一个组件,也可以是多个组件的综合体,而且这一个过程非常方便. ...

  2. Node.js向MongoDB中插入并查询数据

    首先必须要保持Node.js与MongoDB保持连接 具体教程见:Node.js连接MongoDB数据库步骤 插入数据步骤如下 node项目文件如下:在routes文件夹下新建insert.js文件, ...

  3. 吴恩达《深度学习》-课后测验-第一门课 (Neural Networks and Deep Learning)-Week 4 - Key concepts on Deep Neural Networks(第四周 测验 – 深层神经网络)

    Week 4 Quiz - Key concepts on Deep Neural Networks(第四周 测验 – 深层神经网络) \1. What is the "cache" ...

  4. 3.CDN加速简介

    什么是CDN CDN的全称是Content Delivery Network,即内容分发网络.CDN的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中,在用户访问 ...

  5. IDEA使用maven搭建SSM框架整合项目(超级详细,值得一看)

    目录 温馨提示 简单介绍下SSM 搭建过程 一.框架介绍 二.下载Maven 三.创建Maven项目 四.Maven工程需要引入的Jar 包 五.整合SSM框架.需要的相关配置文件配置项目 六.工程导 ...

  6. idea配置springboot项目记录

    配置文件application.properties server.port=80 server.servlet.context-path=/bookManage spring.mvc.static- ...

  7. Redis5设计与源码分析读后感(四)压缩列表

    一.引言 上一节我们总结了跳跃表的知识,我们知道了有序数组可以用跳跃表实现,也可以用压缩列表来实现,这一篇文章我们来总结一下压缩列表相关的知识. 二.压缩列表简介 定义:压缩列表 ziplist 本质 ...

  8. 利用glog打印日志

    glog出自互联网豪门google,质量有保证,轻量级,入门简单,功能较全,线程安全.有关glog的打印细节本篇文章不再赘述,网上一大堆的资料,参考:glog日志库使用笔记. glog的托管地址:gi ...

  9. 【Java并发编程】面试常考的ThreadLocal,超详细源码学习

    目录 ThreadLocal是啥?用来干啥? ThreadLocal的简单使用 ThreadLocal的实现思路? ThreadLocal常见方法源码分析 ThreadLocal.set(T valu ...

  10. Azure Storage 系列(七)使用Azure File Storage

    一,引言 今天我们开始介绍 Storage 中的最后一个类型的存储----- File Storage(文件存储),Azure File Storage 在云端提供完全托管的文件共享,这些共享项可通过 ...