Linux命令篇(六):vi/vim专项

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝您生活愉快!

文章目录

  • 一、什么是vim
  • 二、vim操作说明
    • [2.1 vim的三种模式](#2.1 vim的三种模式)
      • [2.1.1 命令模式](#2.1.1 命令模式)
      • [2.1.2 输入模式](#2.1.2 输入模式)
      • [2.1.3 命令行模式](#2.1.3 命令行模式)
  • 三、vi/vim命令使用说明
    • [3.1 vi创建文件](#3.1 vi创建文件)
    • [3.2 vi/vim编辑文件](#3.2 vi/vim编辑文件)
    • [3.3 保存退出](#3.3 保存退出)
    • [3.4 vi/vim常用按键说明](#3.4 vi/vim常用按键说明)
  • 四、结束语

一、什么是vim

Vim 是从 vi 发展出来的一个文本编辑器。简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具。

二、vim操作说明

2.1 vim的三种模式

基本上 vi/vim 共分为三种模式,命令模式 (Command Mode)、输入模式 (Insert Mode)和命令行模式(Command-Line Mode)

2.1.1 命令模式

启动vi/vim命令,便进入到了命令模式,此时敲击键盘操作便会被vim识别为命令动作,在该模式下可以进行如下操作命令:

  • i:切换到输入模式,在光标当前位置开始输入文本
  • x:删除当前光标所在处的字符
  • : -- 切换到底线命令模式,以在最底一行输入命令
  • dd:剪切当前行
  • yy:复制当前行
  • u:撤销上一次操作
  • :w -- 保存文件,不退出
  • :q -- 退出,不保存文件
  • :wq -- 保存退出
  • ZZ -- 保存退出

2.1.2 输入模式

在命令模式下,按 i 即可进入输入模式,使用Esc键可以退出输入模式。在输入模式中可以使用的操作如下:

  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式

2.1.3 命令行模式

在输入模式中按esc键退出输入模式后,按":"键便可进入底线命令行模式,在底线命令模式中,可以进行查询字符串等内容的操作,基本常用的命令有(已经省略了冒号):

:w -保存文件

:q -退出 Vim 编辑器

:wq -保存文件并退出 Vim 编辑器

:ZZ -保存文件并退出 Vim 编辑器

按Esc键可以退出底线命令行模式

三、vi/vim命令使用说明

3.1 vi创建文件

我们可以使用 vi 命令来建立一个名为 tes.txt 的文件,可以进行如下命令操作:

bash 复制代码
vi test.txt

注意:vi 后面一定要加文件名,不管该文件存在与否!

3.2 vi/vim编辑文件

按下 i 进入输入模式(也称为编辑模式),开始编辑文字,此时会出现如下画面,表示目前处于编辑过程

3.3 保存退出

返回到一般模式中,输入:wq保存退出

3.4 vi/vim常用按键说明

  • Ctrl + f -- 屏幕『向下』移动一页,相当于 Page Down按键 (常用)
  • Ctrl + b --屏幕『向上』移动一页,相当于 Page Up 按键 (常用)
  • Ctrl + d --屏幕『向下』移动半页
  • Ctrl + u --屏幕『向上』移动半页
  • $ 或功能键End --移动到这一行的最后面字符处(常用)
  • H --光标移动到这个屏幕的最上方那一行的第一个字符
  • L --光标移动到这个屏幕的最下方那一行的第一个字符
  • G --移动到这个档案的最后一行(常用)

四、结束语

以上总结linux编辑文件的两个常用命令vi/vim,并列举了每个命令高频使用的参数和应用场景,如有其他疑问请大家评论留言指出,欢迎大家指正。最后,希望这篇博文能给大家提供些许帮助,感谢大家的支持!

相关推荐
沫璃染墨30 分钟前
《Linux工程实践篇(一):认识设计模式——从日志系统看策略模式》
linux·c++·安全·设计模式·策略模式
工作10年+,存储芯片行业37 分钟前
Linux NVMe 中断排查与性能优化:CPU 亲和性
linux·运维·服务器·windows·性能优化·ssd·pcie
wuminyu1 小时前
ForkJoinPool内部WorkQueue的Lock-Free数组操作以及并发任务窃取原理剖析
java·linux·c语言·jvm·c++
快乐の番薯1 小时前
卷王问卷考试系统自动化功能测试
运维·功能测试·自动化
她说彩礼65万1 小时前
C语言 堆区和栈区
java·linux·c语言
一号弯2 小时前
装完LINUX,请先新建日常用户
linux·运维·服务器
驭渊的小故事2 小时前
linux 基础命令 + git 仓库创建和配置命令
linux·git
ShineWinsu2 小时前
对于Redis:主从复制的解析
linux·数据库·c++·redis·缓存·面试·主从复制
Lsetea2 小时前
OpenSSL verify报unable to get issuer certificate:error 2与partial_chain排查
linux·https·ssl证书·openssl·证书链
许彰午2 小时前
03-Linux环境准备依赖包内核参数与用户组
linux·运维·服务器·数据库