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

devtools/2024/11/11 6:11:13/

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

文章目录

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

vim_2">一、什么是vim

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

vim_5">二、vim操作说明

vim_6">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键可以退出底线命令行模式

vim_43">三、vi/vim命令使用说明

3.1 vi创建文件

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

vi test.txt

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

vim_52">3.2 vi/vim编辑文件

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

3.3 保存退出

返回到一般模式中,输入:wq保存退出
在这里插入图片描述

vim_58">3.4 vi/vim常用按键说明

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

四、结束语

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


http://www.ppmy.cn/devtools/45952.html

相关文章

【C语言回顾】预处理

前言1. 简单概要2. 预处理命令讲解结语 上期回顾: 【C语言回顾】编译和链接 个人主页:C_GUIQU 归属专栏:【C语言学习】 前言 各位小伙伴大家好!上期小编给大家讲解了C语言中的编译和链接,接下来我们讲解一下预处理! …

韶关学院携手泰迪智能科技“见习研学”活动圆满结束

为进一步深化校企合作,落实高校应用型人才培养。5月31日,韶关学院与广东泰迪智能科技股份有限公司联合开展学生企业见习活动。专业教师林思思以及来自韶关学院140名学生参与此次见习活动,泰迪智能科技培训业务部经理钟秋平、校企合作经理吴桂…

天童教育:停止内耗放松身心

如果一个人经常从自己身上找原因,经常揽下他人的过错的责任,总是自我怀疑自我否定,认为自己不值得被爱。当被人误解时会在心里悄悄附和,责怪自己。缺乏自信,没办法和他人有正常的交往,长期处于身心疲惫的状…

碰撞检测技术在AI中的重要作用

引言: 随着人工智能技术的不断发展,AI已经渗透到我们生活的方方面面。在游戏、机器人、虚拟现实等领域中,碰撞检测技术扮演着至关重要的角色。本文将探讨碰撞检测技术在AI中的作用,以及如何利用这项技术来改善AI系统的性能和用户体…

合并两个有序链表和合并 K 个升序链表

21. 合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4]示例 2: 输入:l1 [], l2 […

Vue3生命周期

文章目录 前言初始化组件挂载组件更新组件卸载示意图 前言 每个vue实例在被创建都要经历一系列初始化的过程 在这个过程中会运行一些叫做生命周期钩子的函数 使用户可以在页面中不同的阶段执行代码 初始化 1.setup() 在组件实例化时调用,用于设置组件的状态和响应…

超声波清洗机哪个品牌更值得推荐?精选四大王牌臻品分享

近年来,随着人们对健康生活要求的提升,超声波清洗机在市场上的受欢迎程度逐渐攀升,产品的多样性也让人眼花缭乱。近期收到了大量读者的一些私信,其中很多人询问使用超声波清洗机会对眼镜有伤害吗、超声波清洗机是不是智商税、超声…

165.二叉树:对称二叉树(力扣)

代码解决 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* Tre…