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

news2024/12/28 22:23:01

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

文章目录

  • 一、什么是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

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 的文件,可以进行如下命令操作:

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,并列举了每个命令高频使用的参数和应用场景,如有其他疑问请大家评论留言指出,欢迎大家指正。最后,希望这篇博文能给大家提供些许帮助,感谢大家的支持!

linux相关文章索引文章链接
Shell 流程控制Shell 流程控制
Shell 基本运算符Shell 基本运算符
Shell 变量Shell 变量
Linux命令篇(一):文件管理部分Linux命令篇(一):文件管理部分
Linux命令篇(二):文档编辑部分Linux命令篇(二):文档编辑部分
Linux命令篇(三):磁盘管理部分Linux命令篇(三):磁盘管理部分
Linux命令篇(四):系统管理部分Linux命令篇(四):系统管理部分
Linux命令篇(五):解压缩部分Linux命令篇(五):解压缩部分
Linux命令篇(六):vi/vim专项Linux命令篇(六):vi/vim专项
Linux系列:系统目录结构Linux系列:系统目录结构
Linux系列–shell基础语法Linux系列–shell基础语法
Linux系列–定时任务设置Linux系列–定时任务设置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1794789.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[已解决]FinalShell连接CentOS失败:java.net.UnknownHostException: centos

报错: 解决办法: 1.查看Windows:C:\Windows\System32\drivers\etc\ 2.拷贝hosts文件,用记事本打开hosts文件 3.添加主机名centos及对应IP地址,保存并粘贴覆盖C:\Windows\System32\drivers\etc\中的hosts文件 4.打开cmd命令窗口输…

怎么获取二维码的图片链接?在线二维码解码的使用方法

随着二维码在日常生活中被广泛的应用,有很多的内容都会生成二维码之后,其他人通过扫码在手机上查看内容。但是在一些情况下二维码也会有局限性,当无法扫码时该怎么来获取二维码中的内容呢? 通过分解二维码功能,可以获…

git随记

git status 查看文件状态 git status -s 比较简洁的查看文件状态。如下代表此文件是新建的,没有被git跟踪的文件: $ git status -s ?? abc.txtgit add abc.txt 将abc添加到暂存区。后再次git status -s $ git status -s A abc.txtgit reset 将暂存…

C语言:详解gcc驱动程序完成编译、汇编、链接的过程

相关阅读 C语言https://blog.csdn.net/weixin_45791458/category_12423166.html?spm1001.2014.3001.5482 gcc是一个命令,严格意义上说,它只是一个驱动程序,而不是一个编译器。gcc负责调用GNU工具链中的预处理器、编译器、汇编器、链接器等工…

RetroMAE-文本embedding算法

1)输入文本经掩码操作后由编码器(Encoder)映射为隐空间中的语义向量;而后解码器(Decoder)借助语义向量将另一段独立掩码的输入文本还原为原始的输入文本 2)编码器的掩码率为15%-30%;解码器的掩码率为50%-70…

GlaDS缘起

题目:Modeling channelized and distributed subglacial drainage in two dimensions 近年来,冰盖表面融化与冰盖动态之间的联系及其对海平面上升的影响引起了广泛关注。特别是格陵兰冰盖的研究显示,表面融水显著影响冰川移动速度,而冰下排水系统对冰川动力学及冰川水文学…

gitlab之cicd的gitlab-runner集成-dockerfile构建环境

目录 概述离线资源docker-compose问题 docker-compose问题1问题2 gitlab-runner集成gitlab 概述 cicd引文目录是想通过dockerfile构建 maven、jdk、docker环境的 gitlab-runner 运行环境。但docker最后测试的时候有点问题,且最后使用 kubectl 时有麻烦,所…

Facechain系列: 通过代码进行推理

进行推理时,需要编辑run_inference.py中的代码。为了避免人物肖像的版权问题,文章中使用的图片不是由FaceChain实际生成的图片,特此说明。 1. 以下代码适用于Linux系统,如果希望在Windows系统中运行, folder_path f…

新加坡裸机云站群服务器稳定性怎么样

新加坡裸机云站群服务器的稳定性在云计算领域备受关注,这得益于其卓越的硬件配置、先进的数据中心设计、优质的网络连接以及严格的管理措施。以下是对新加坡裸机云站群服务器稳定性的详细科普: 一、硬件与配置 新加坡裸机云站群服务器通常采用高性能的物…

matrix-breakout-2-morpheus vulnhub靶场

端口扫描 80 81 需要用户名密码登录 目录扫描 robots.txt 妹用 找不到利用点,换个扫描器再扫 发现新的文件 graffiti.txt graffiti.php 输入的数据Post后会回显到页面上 抓包看看,居然直接传文件路径 发现我们post的数据被写入了graffiti.…

搜维尔科技:【研究】Xsens Link对跑步运动学的可靠性

内容类型:客户案例 产品:MVN Link 产品用例:教育科研 应用领域:运动分析 在实验室环境之外分析现实环境中人体运动的能力正变得越来越重要。各个学科的研究人员,尤其是运动科学和生物力学的研究人员&a…

根据PDF模版填充数据并生成新的PDF

准备模版 使用 福昕高级PDF编辑器 (本人用的这个,其他的也行,能作模版就行)打开PDF文件点击 表单 选项,点击 文本域在需要填充数据的位置设计文本域设置 名称、提示名称相当于 属性名,提示就是提示&#x…

伽马校正技术在AI绘画中的作用

随着人工智能技术的飞速发展,AI绘画已经成为了艺术创作领域的一股新兴力量。在这个数字化时代,计算机图形学和机器学习的结合为我们带来了前所未有的创作工具。然而,为了实现更加真实和自然的色彩表现,伽马校正技术在其中扮演着至…

python怎么下载numpy

安装Python step1:官网下载安装包; https://www.python.org/ 我下载的是python-3.4.4.msi step2:python环境变量配置; 计算机-属性-高级系统设置-环境变量-系统变量 找到PATH,点击编辑,加英文分号;在…

Qt——升级系列(Level Two):Hello Qt 程序实现、项目文件解析、Qt 编程注意事项

Hello Qt 程序实现 使用“按钮”实现 纯代码方式实现: // Widget构造函数的实现 Widget::Widget(QWidget *parent): QWidget(parent) // 使用父类构造函数初始化QWidget,传入父窗口指针, ui(new Ui::Widget) // 创建Ui::Widget类的实例,并…

【自定义View】Android圆饼进度条

源码 自定义属性 <?xml version"1.0" encoding"utf-8"?> <resources><declare-styleable name"ArcProgressView"><attr name"android:textSize" /><attr name"bgBorderWidth" format"d…

短视频竖屏:成都鼎茂宏升文化传媒公司

短视频竖屏&#xff1a;重塑视觉体验与社交传播的新潮流 随着移动互联网的迅猛发展和智能手机的普及&#xff0c;短视频已经成为了人们日常生活中不可或缺的一部分。而在短视频的众多形式中&#xff0c;竖屏短视频以其独特的视角和便捷的传播方式&#xff0c;正逐渐崭露头角&a…

Qt绘图(2D)讲解

一、绘图基础 2D 绘图系统如下: 2D 绘图主要是 QPainter、QPaintDevice、QPaintEngine 三个类,主要类的作用(其关系见图示) QPainter(绘制器)是用来执行绘图的操作,用于描述需要绘制的图形,比如需要绘制线、矩形、圆形等。QPaintDevice(绘图设备)是抽象出来的需要绘制的绘…

uni微信小程序editor富文本组件如何插入图片

需求 在editor中插入图片&#xff0c;并对图片进行编辑&#xff0c;简略看一下组件的属性&#xff0c;官网editor 组件 | uni-app官网 解决方案 首先要使用到ready这个属性&#xff0c;然后官网有给代码粘过来&#xff0c;简单解释一下这段代码的意思&#xff08;作用是在不同…

linux实验报告

实验一&#xff1a;Linux操作系统的安装与配置 实验目的&#xff1a; 1.掌握虚拟机技术&#xff1b; 2.掌握Linux的安装步骤&#xff1b; 3.掌握安装过程中的基本配置要求。 4.掌握正确启动Linux的方法&#xff1b; 5.掌握正确退出Linux的方法&#xff1b; 6.熟悉已安装…