文章目录

  • 启动和退出
  • 命令模式和插入模式
    • 保存操作
  • 光标移动命令
  • 文本编辑操作
    • 插入一行
    • 删除文本
    • 复制和粘贴
  • 查找和替换
    • 行内搜索
    • 搜索整个文件
    • 全局搜索和替换

启动和退出

【启动】:输入vim命令,屏幕显示如下:

【退出】:输入以下命令退出vim:

:q

此时shell会返回初始的操作窗口。如果因为一些原因,vi不能够退出 (通常是因为没有保存修改过的文件),可以通过在命令后添加感叹号的方式强制退出。

:q!

命令模式和插入模式

再次启动vim,并向其传递一个不存在的文件名,就可以通过vim创建新文件。

每行开头的波浪线代表此行没有任何内容,即当前文件是一个空文件。

此时,vim就处于命令模式,在命令模式中,几乎键盘上的每一个按键都代表一条命令。

如果用户需要向文件中添加一些内容,那么首先要做的就是按I键(或 i)进入插入模式。现在就可以进行输入操作了:

输入完成后,按Esc键退出插入模式并返回命令模式。,然后进行保存和退出操作。

保存操作

输入命令:

:w


文件保存成功!
然后输入以下命令退出vim:

:q

也可以将两条命令连起来使用,即:

:wq

表示保存并退出!

光标移动命令

在命令模式下,vi提供了很多移动光标命令。

按键 动作
L或右方向键 右移一位
H或左方向键 左移一位
J或下方向键 下移一行
K或上方向键 上移一行
数字0 至本行开头
A 至本行末尾,并进入插入模式
a 后移一位,并进入插入模式
Shift-6(^) 至本行第一个非空字符
Shift-4($) 至本行的末尾
W 至下一单词或标点的开头
B 至上一单词或标点的开头
Ctrl-F或Page Down 下翻一页
Ctrl-B或Page UP 上翻一页
number-Shift-G 至第number行
Shift-G(G) 至文件的最后一行

文本编辑操作

插入一行

插入文本的另一种方式是在文本中重开一行,即在两行现存的文字中间 插入空白行并进入插入模式。

命令
o 当前行的上方插入一行
O 当前行的下方插入一行

删除文本

命令 删除内容
x 当前字符
3x 当前字符和之后2个字符
dd 当前行
5dd 当前行和之后4行
dW 当前字符到下一单词的起始
d$ 当前字符到当前行的末尾
d0 当前字符到当前行的起始
d^ 当前字符到当前行下一个非空字符
dG 当前行到文件末尾
d20G 当前行到文件第20行

复制和粘贴

命令 复制内容
yy 当前行
5yy 当前行和之后4行
yW 当前字符到下一单词的起始
y$ 当前字符到当前行的末尾
y0 当前字符到当前行的起始
y^ 当前字符到当前行下一个非空字符
yG 当前行到文件末尾
y20G 当前行到文件第20行

查找和替换

行内搜索

f

f 命令在行内进行搜索,并将光标移至搜索到的下一个指定字符。比 如,命令fa就会将光标移动到本行下一处出现字符a的地方。

搜索整个文件

l

命令“/”可以完成对单词或短语的搜索。当用户使用“/”命令后,一个“/”符号会出现在屏幕的底部。接下 来,输入需要搜索的单词或短语,以Enter结束。光标就会移动到下一处 包含被搜索字符串的地方。

全局搜索和替换

输入以下命令可将文件中的abc替换为cba:

:%s/abc/cba/g

现在就来解析这条命令每一部分的功能:

符号 含义
分号用于启动一条ex命令
% 确定了操作作用的范围。%简洁地代表了从文件的第1行到最后1行。本命 令的范围还可以表示为1,$,意思 是“从第1行到文件的最后一行”。
/abc/cba 搜索和替换的文本
g 代指global(全局),也就是说对搜索到的每一行的每一个实例进行替 换。如果g缺失,那么只替换每一行第一个符合条件的实例

在命令末尾添加c,则命令在每次替换之前都会请求用户确认。

:%s/abc/cba/gc

  • y: 执行替换
  • n: 跳过此次替换
  • a: 执行此次替换和之后的所有替换
  • q或者ESC: 停止替换
  • l: 执行此次替换并退出替换。
  • Ctrl-E,Ctrl-Y: 分别是向下滚动和向上滚动,能用于查看替换处的上下文

【Linux】 - linux文本编辑器vim的常用操作相关推荐

  1. 【Linux】文本编辑器Vim

    往期内容: Linux常用指令合集 Linux文本编辑器 Linux软件包管理 Linux用户管理 Linux权限管理 文章目录 Vim常用操作 什么是Vim Vim工作模式 插入命令 定位命令 删除 ...

  2. Linux基础知识之Vim文本编辑器二之常用操作

    欢迎查看和关注 一个开源的个人学习计算机科学知识成长记录(前后端,数据结构与算法) 导入命令执行结果 :r !command 1 am very happya kkkkk kkkkaaaaaaa,2 ...

  3. Linux学习总结(19)——Linux中文本编辑器vim特殊使用方法

    1. vim比对功能 在linux的环境下 用于观察两个文件的一致性的时候我们一般用diff这个命令来比对,但是这个命令不能你特别详细的比对出 具体的位置或者行对比.这里就用到了vim的对比功能 vi ...

  4. Linux文本编辑器---vim详解

    零.前言 本篇主要介绍Linux下文本编辑器vim的使用方法,以及sudo命令的实现. 1.什么是vim 在windows系统下,我们使用VS来编写代码,编译代码,调试代码,运行代码等,甚至还可以进行 ...

  5. Linux文本编辑器-vim

    Linux文本编辑器-vim Vim简介 Vim是从vi发展出来的一个文本编辑器.其代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和Emacs并列成为类Unix系统用户最喜欢 ...

  6. linux删除vim编辑器创的目录,Linux目录和文件——文本编辑器Vim

    Linux目录和文件--文本编辑器Vim 摘要:本文主要学习在Linux系统中使用Vim文本编辑器编辑文本. 什么是Vim Vim是一个基于文本界面的编辑工具,使用简单且功能强大.更重要的是,Vim是 ...

  7. linux文件编辑器的三种模式,Linux中文本编辑器三种工作模式切换及vi编辑器三种工作模式下命令详解...

    文本编辑器的作用 创建或修改文本文件 维护Linux系统中的各种配置文件 Linux中最常用的文本编辑器 Linux中最常用的文本编辑器 vi:类UNIX操作系统的默认文本编辑器 vim:vim时vi ...

  8. kali linux 里vim如何使用_Kali Linux的vi编辑器/vim编辑器使用方法

    转载声明:本文为转载文章 Kali Linux系统的vi编辑器/vim编辑器的使用和CentOS有很多不同.基本使用方法如下 1.vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(comma ...

  9. linux 全选 编辑文本_强烈推荐:Linux终端文本编辑器Micro

    一般来说Linux老手们用的编辑器都是vi或vim,但是vim等的操作方式对新人超级不友好的. VS Code作为编辑器也不错,但是并不是每个服务器都装了WM和DM. 于是一般都得苦哈哈的用nano. ...

最新文章

  1. 2016 - 1- 21 - RunLoop使用(2016-1-24修改一次)(2016 - 1 - 24 再次修改)
  2. Windows系统Pycharm软件重置设置,恢复默认设置方法介绍
  3. Nrf51822中设置128bit UUID service
  4. 问题小结(一)——servlet生命周期、get和post请求、内置对象、单例模式等
  5. tdd java_Java TDD简介–第2部分
  6. python的哪个模块提供了文件处理方法_Python处理文件路径有哪些方法?
  7. iphonex价格_iPhone X竟然可以换LCD屏幕,价格只要一半
  8. linux 忘记mysql密码的解决办法
  9. linux修改sybase数据库密码,巧用Sybase数据库的超级用户密码
  10. iOS 基础入门--Bull' Eye 小游戏 
  11. xheditor html5,Flask项目集成富文本编辑器XHEditor
  12. 网络创业者之家:普通人想要获得“第一桶金”,要记住这3点
  13. Flink实战(八十五):flink-sql使用(十二)Flink 与 hive 结合使用(四)Hive Read Write
  14. linux安装java.jdk环境
  15. 2DPCA人脸识别--python
  16. 路由刷机(Breed)操作步骤
  17. 转自蒋宇(MTK WAP和MMS网络服务配置 )
  18. 建立私有CA实现证书申请颁发
  19. 不属于php语言的,PHP和Java都不属于脚本语言。()
  20. Scratch(五十三):守株待兔

热门文章

  1. 【转载】评论:从射手QQ之争看开源许可证的选择
  2. 设计模式--单例模式
  3. GNU Radio中的消息传递机制(Message Passing)
  4. 计算机组装与维护提问问题,计算机组装与维护浅析论文
  5. u盘安装kali linux英文,kali linux 安装至移动硬盘或U盘
  6. js的三种弹出对话框
  7. 关于页面出现未定义错误的解决
  8. 密码学中的同态加密算法,保证数据的安全,你了解吗?
  9. 关于我对体测成绩进行分析这件事
  10. h61+i5 3470+hd2500黑苹果带Clover