Ubuntu—vi编辑器的使用一

vi编辑器

  • vi是Linux中最基本的编辑器。但vi编辑器在系统管理、服务器配置工作中永远都是无可替代的。
    在这里插入图片描述|50

vi编辑器的使用

  • vi有以下三种模式
    • 命令行模式
      • 用户在用vi编辑文件时, 最初进入的是该模式。可以进行复制、粘贴等操作
    • 插入模式
      • 进行文件编辑, 按ESC键可以回到命令行模式
    • 底行模式
      • 光标位于屏幕的底行。可以进行文件的保存、退出、查找、替换、列出行号等。命令行转底行用:
    • 三种模式切换示意图:在这里插入图片描述|200

Linux的编辑器–vi

vi的基本使用方法(DEMO)

  • 输入模式
    在这里插入图片描述|50

  • 命令模式
    在这里插入图片描述|50

vi模式切换命令

命令功能
A(Append) 进入编辑状态,从当前光标所在行的行尾开始插入键盘输入的字符。
a(Append) 进入编辑状态,在当前光标的下一个位置开始插入键盘输入的字符。
I(Insert) 进入编辑状态,在当前光标所在行的行首开始插入键盘输入的字符。
i(Insert) 进入编辑状态,在当前光标位置开始插入键盘输入的字符。
O(Open) 进入编辑状态,并在当前光标所在行的上方插入一新行,光标移到该新行的行首,以后键盘输入的字符将插入到光标位置。
o(Open) 进入编辑状态,并在当前光标所在行的下方插入一新行,光标移到该新行的行首,以后键盘输入的字符将插入到光标位置。
ESC进入命令状态,从编辑状态切换回命令模式,可以执行各种命令,例如保存文件、退出编辑器等。
:! Command在 Vim 中执行外部命令 Command,按回车键可以返回 Vim 继续工作。请注意,为了执行外部命令,可能需要使用 :! 前缀,例如 :!ls 可以列出当前目录中的文件。

vi拷贝与粘贴命令

小写p是当前行的下面, 大写P是上面
在这里插入图片描述|50

vi保存和退出命令

所有前面带冒号的命令都是底行模式下

在这里插入图片描述

总结

  • vi的基本命令
    • 三种模式、模式切换命令
    • 拷贝和粘贴命令
    • 保存和退出命令
    • 光标命令
  • vi编辑器是嵌入式Linux环境下开发人员每天工作都要使用的工具,因此,建议尽可能多的学习、熟练关于vi编辑器使用的命令
  • vi 文件名 如果该文件已存在, 它会直接打开, 如果说这个文件是不存在的文件, 它就给你新建文件, 并且底行显示[New file]

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java的第十五篇文章——网络编程(后期再学一遍)

目录 学习目的 1. 对象的序列化 1.1 ObjectOutputStream 对象的序列化 1.2 ObjectInputStream 对象的反序列化 2. 软件结构 2.1 网络通信协议 2.1.1 TCP/IP协议参考模型 2.1.2 TCP与UDP协议 2.2 网络编程三要素 2.3 端口号 3. InetAddress类 4. Socket 5. TCP网络…

VMPWN的入门系列-2

温馨提示: 文章有点长,图片比较多,请耐心阅读 实验四 VMPWN4 题目简介 这道题应该算是虚拟机保护的一个变种,是一个解释器类型的程序,何为解释器?解释器是一种计算机程序,用于解释和执行源代码。…

PKG内容查看工具:Suspicious Package for Mac安装教程

Suspicious Package Mac版是一款Mac平台上的查看 PKG 程序包内信息的应用,Suspicious Package Mac版支持查看全部包内全部文件,比如需要运行的脚本,开发者,来源等等。 suspicious package mac使用简单,只需在选择pkg安…

螺旋矩阵 II

给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1: 输入:n 3 输出:[[1,2,3],[8,9,4],[7,6,5]] 示例 2: 输入:n 1 输出&a…

软工导论知识框架(二)结构化的需求分析

本章节涉及很多重要图表的制作,如ER图、数据流图、状态转换图、数据字典的书写等,对初学者来说比较生僻,本贴只介绍基础的轮廓,后面会有单独的帖子详解各图表如何绘制。 一.结构化的软件开发方法:结构化的分析、设计、…

【并发编程】ForkJoinPool工作原理分析

目录 前置内容课程内容一、由一道算法题引发的思考1.算法题2.什么是归并排序法 二、什么是Fork/Join框架1.基本介绍2.ForkJoinPool2.ForkJoinPool构造函数及参数解读3.任务提交方式4.工作原理图5.工作窃取6.和普通线程池之间的区别7.ForkJoinTask 学习总结 前置内容 Q1&#x…

WEB:web2

背景知识 代码审计 题目 由上述可知,这段代码定义了一个函数encode,接受一个字符串参数$str,并返回对其进行加密后的结果 加密算法包括: 使用strrev函数将字符串进行翻转;对翻转后的每个字符,将其ASCII值…

helm部署rabbitmq

1.添加rabbitmq仓库并下载包 helm repo add bitnami https://charts.bitnami.com/bitnami helm pull bitnami/rabbitmq --version 10.1.4 tar -zxvf rabbitmq-10.1.4.tgz mv values.yaml values.yaml.back grep -v "#" values.yaml.back > values.yaml2.helm部署…

xxl-Job分布式任务调度

1.概述 1.1 什么是任务调度 我们可以先思考一下业务场景的解决方案: 某电商系统需要在每天上午10点,下午3点,晚上8点发放一批优惠券。某银行系统需要在信用卡到期还款日的前三天进行短信提醒。某财务系统需要在每天凌晨0:10结算前一天的财…

系统架构设计师-软件架构设计(3)

目录 一、软件架构风格(其它分类) 1、闭环控制结构(过程控制) 2、C2风格 3、MDA(模型驱动架构 Model Driven Architecture) 4、特定领域软件架构(DSSA) 4.1 DSSA基本活动及产出物…

MySQL之深入InnoDB存储引擎——Checkpoint机制

文章目录 一、引入二、LSN三、触发时机 一、引入 由于页的操作首先都是在缓冲池中完成的,那么如果一条DML语句改变了页中的记录,那么此时页就是脏的,即缓冲池中页的版本要比磁盘的新。那么数据库需要将新版本的页刷新到磁盘。倘若每次一个页…

Unity源码分享-黄金矿工游戏完整版

Unity源码分享-黄金矿工游戏完整版 项目地址:https://download.csdn.net/download/Highning0007/88118933

Raki的读paper小记:RWKV: Reinventing RNNs for the Transformer Era

Abstract&Introduction&Related Work 研究任务 基础模型架构已有方法和相关工作 RNN,CNN,Transformer稀疏注意力(Beltagy等人,2020年;Kitaev等人,2020年;Guo等人,2022年&am…

arm 函数栈回溯

大概意思就是arm每个函数开始都会将PC、LR、SP以及FP四个寄存器入栈。 下面我们看一下这四个寄存器里面保存的是什么内存 arm-linux-gnueabi-gcc unwind.c -mapcs -w -g -o unwind&#xff08;需要加上-mapcs才会严格按照上面说的入栈&#xff09; #include <stdio.h> …

Flutter 开发者工具 Android Studio 开发Flutter应用

Flutter 开发者工具 在 Android Studio 开发Flutter应用 &#x1f525; Android Studio 版本更新 &#x1f525; Android Studio Check for Update Connection failed ​ 解决方案 如果是运行的是32位的android studio需要在andriod studio的启动目录下找到studio.exe.vmoptio…

Flutter-基础Widget

Flutter页面-基础Widget 文章目录 Flutter页面-基础WidgetWidgetStateless WidgetStateful WidgetState生命周期 基础widget文本显示TextRichTextDefaultTextStyle 图片显示FlutterLogoIconImageIamge.assetImage.fileImage.networkImage.memory CircleAvatarFadeInImage 按钮R…

抖音账号矩阵系统开发源码

一、技术自研框架开发背景&#xff1a; 抖音账号矩阵系统是一种基于数据分析和管理的全新平台&#xff0c;能够帮助用户更好地管理、扩展和营销抖音账号。 部分源码分享&#xff1a; ic function indexAction() { //面包屑 $breadcrumbs [ [tit…

【雕爷学编程】MicroPython动手做(13)——掌控板之RGB三色灯2

知识点&#xff1a;什么是掌控板&#xff1f; 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片&#xff0c;支持WiFi和蓝牙双模通信&#xff0c;可作为物联网节点&#xff0c;实现物联网应用。同时掌控板上集成了OLED…

Java另一种debug方法(not remote jmv debug),类似python远程debug方式

这种Debug类似python的debug方式&#xff0c;是运行时将业务代码及依赖推送到Linux并使用Linux的java运行运行程。只要本地能运行&#xff0c;就能自动将代码推送到Linux运行&#xff0c;不需打包及设置远程debug jvm参数&#xff0c;适合一些项目Debug调试 运行时会推送一些依…

67. 二进制求和

题目链接&#xff1a;力扣 解题思路&#xff1a;模拟十进制中的列竖式方法进行计算&#xff0c;逢二进一&#xff0c;因为高位在前&#xff0c;低位在后&#xff0c;两个二进制长度不一定相等&#xff0c;可以取两者长度的较大值&#xff0c;从后面开始遍历两个字符串&#xff…