1. 什么是vim

Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在vi的基础上改进和增加了很多特性。

vim编辑器是Linux系统下标准的编辑器,作用相当于windows系统中的记事本一样,但他却比记事本强大多了,vim完全不逊色于任何最新的文本编辑器。他是我们使用Linux系统不能缺少的工具。要想成为Linux大牛,熟练掌握vim的功能是必须的

学会它后,将在Linux的世界里畅行无阻。

2. vim中的模式

第1种 命令模式

这是刚进入vim中默认的模式,在此模式下可以按上下左右或者一些快捷键随意移动光标,也可以进行复制删除粘贴之类的操作

第2种 编辑模式

在命令模式虽然可以随意移动 也可以进行复制删除的内容  但是却无法对文件的内容进行直接的修改,这个时候就需要使用一些快捷键来进入编辑模式,在编辑模式下才可以对文件内容进行修改

第3种 底行模式

在英文状态下输入( : / ? )三个中的任何一个,就可以将光标移动到最底下那一行 因为操作都是在最底部进行的 所以我们称为底行模式

3. 常用快捷键

3.1 复制 粘贴 删除

复制光标所在行 yy

粘贴 p

多次粘贴  如粘贴3次  3p

删除/剪切  dd

删除当前行到文件结尾的内容 dG

3.2 进入编辑模式

o(小写字母o)    在当行下面插入一个空行并进入编辑模式

O(大写字母O)   在当行上面插入一个空行并进入编辑模式

C(大写字母C) 删除光标所在位置到行尾的内容并进入编辑模式

A               快锁到达行尾并进入编辑模式

3.3 移动

光标移动到文件的第一行  gg

光标移动到文件的最后一行  G

光标移动到文件的第一百行 100gg

光标移动到这一行的行首  0(数字0)

把光标移动大这一行的结尾 $

3.4 退出及撤销

ZZ 保存并退出

:wq 保存并退出

:q  退出(该操作只能在未编辑信息才能使用)

:q!  强制退出不保存

3.5 补充

在命令行模式下输入 u 可以撤销上一次的操作

在编辑模式下 按下 Esc 可以退出编辑模式 返回命令行模式

在命令行模式 输入( : / ? )三个中的任何一个 可以进入底行模式

4. vim下批量删除与批量编辑

4.1 批量删除

进入批量编辑模式 (VISUAL BLOCK) 可视块模式

ctrl + v

通过上下左右  选择

按d 删除所选内容

4.2  批量编辑

进入批量编辑模式 (VISUAL BLOCK) 可视块模式

ctrl + v

通过上下左右  选择

按I(大写)

编辑完成 按 esc 等等

5. vim下替换与搜索

5.1 替换

将文件中的ssh替换为oldboy

:%s#ssh#oldboy#g

:%s###g

5.2 搜索

搜索文件中的oldboy字符

/oldboy

/ 后面跟上要搜索的内容

搜索显示的内容会高亮

:noh 临时取消语法高亮

6. vim下查询帮助

在使用vim时忘记了G快捷键是干什么的了

:help G

:help 搜索帮助

:help 后面跟上要查询的快捷键

Linux系统下vim常用快捷键及功能的更多相关文章

  1. 【Linux】---Linux系统下各种常用命令总结

    在Linux系统下,“万物皆文件”,之所以强调在强调这个概念,是因为很多人已经习惯了win系统下找找点点得那种方式和思维,因此总是会觉得linux系统下很多指令既复杂又难记.其实都是一样得东西,只是w ...

  2. Linux 系统状态、常用快捷键

    1.查看系统状态 ()df -h #查看分区状态. ()mount #查看文件系统类型. ()du -h -max-depth= 目录名 #查看目录文件大小,批量查找. ()du -sh #查看目录文 ...

  3. Linux系统快速操作常用快捷键

    快捷键名称 快捷键作用 Ctrl + a 将光标移至行首 Ctrl + e 将光标移至行尾 Ctrl + u 前提光标在行尾,则清除当前行所有的内容(有空格照章清除) Ctrl + k 前提光标在行首 ...

  4. Vi (Unix及Linux系统下标准的编辑器)VIM (Unix及类Unix系统文本编辑器)

    Vi是Unix及Linux系统下标准的编辑器.学会它后,您将在Linux的世界里畅行无阻.基本上vi可以分为三种状态,分别是命令模式.插入模式,和底行模式. vi编辑器是所有Unix及Linux系统下 ...

  5. Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

    Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

  6. Linux系统 vi/vim文本编辑器

    Linux系统 vi/vim文本编辑器 (一)Vim/Vi简介 (二)Vim/Vi工作模式 (三)Vim/Vi基本使用 (四)Vim/Vi应用技巧 (一)Vim/Vi简介 Vim/Vi是一个功能强大的 ...

  7. 5.Linux系统的vim与软件包管理

    5.1 Linux系统的vim编辑器 5.1.1 vim编辑器的概述 vim编辑器的简介 1.vim是什么? vim是一个类似vi的文本编辑器,它在vi的基础上增加了很多新特性 vim是vi发展出来的 ...

  8. linux系统下的权限知识梳理

    下面对linux系统下的有关权限操作命令进行了梳理总结,并配合简单实例进行说明.linux中除了常见的读(r).写(w).执行(x)权限以外,还有其他的一些特殊或隐藏权限,熟练掌握这些权限知识的使用, ...

  9. Linux系统下权限管理和命令详解

    下面对linux系统下的有关权限操作命令进行了梳理总结,并配合简单实例进行说明.linux中除了常见的读(r).写(w).执行(x)权限以外,还有其他的一些特殊或隐藏权限,熟练掌握这些权限知识的使用, ...

随机推荐

  1. 汇编学习pushl, popl

  2. .Net Core2.2 + EF Core + DI,三层框架项目搭建教程

    笔记: 近两年.Net Core发展的很快,目前最新版为3.0预览版,之前在网上买了一本1.1版书籍都还没来得及看呢,估计现在拿出来看也毫无意义了.已多年.net工作经验,看书不如直接实际上手来得快, ...

  3. P1616 疯狂的采药(洛谷,动态规划递推,完全背包)

    先上题目链接:P1616 疯狂的采药 然后放AC代码: #include<bits/stdc++.h> #define ll long long using namespace std; ...

  4. 解决window.location.href参数太长

    前言:一提到页面跳转,最常用的一般就是window.location.href,如果需要带参数,也许可以在后面用?拼上,但这样并不安全,而且有个更严重的问题,这样的拼接是有长度限制的,如果达到好几千个 ...

  5. ndk编译libpcap 1.7.4

    android完全菜鸟,绝对的第一次接触,想做手机抓包,在网上搜又是NDK 又是JNI 又是JNETPCAP 完全蒙了,让我这种android和java都弄不明白什么关系的人情何以堪! 静下心想一想, ...

  6. Hdu 4864(Task 贪心)(Java实现)

    Hdu 4864(Task 贪心) 原题链接 题意:给定n台机器和m个任务,任务和机器都有工作时间值和工作等级值,一个机器只能执行一个任务,且执行任务的条件位机器的两个值都大于等于任务的值,每完成一个 ...

  7. Arduino 测试空气质量等级模块 ZP07-MP503 测试

    最近入手空气质量模块 ZP07-MP503,用Arduino采样数据进行测试 先上图看看 ZP07-MP503 产品 ZP07-MP503 一共4个管脚,功能如下 5V 电源输入5V GND  电源输 ...

  8. RabbitMQ-高级特性(六)

    存储机制 待... 消息结构 惰性队列 惰性队列会尽可能将消息存入到磁盘中,消费者消费相应的消息才会加载到内存,它可以支持更长的队列 默认情况下生产者消息会尽可能存储到内存中就算设置持久化消息 也会再 ...

  9. ZOJ 1654 Place the Robots

    题目大意: 在空地上放置尽可能多机器人,机器人朝上下左右4个方向发射子弹,子弹能穿过草地,但不能穿过墙, 两个机器人之间的子弹要保证互不干扰,求所能放置的机器人的最大个数 每个机器人所在的位置确定了, ...

  10. Codeforces Round #240 (Div. 2) D

    , b2, ..., bl (1 ≤ b1 ≤ b2 ≤ ... ≤ bl ≤ n) is called good if each number divides (without a remainde ...