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]

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

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

相关文章

七大经典比较排序算法

1. 插入排序 (⭐️⭐️) 🌟 思想: 直接插入排序是一种简单的插入排序法,思想是是把待排序的数据按照下标从小到大,依次插入到一个已经排好的序列中,直至全部插入,得到一个新的有序序列。例如:…

【C++】开源:Boost库常用组件配置使用

😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍Boost库常用组件配置使用。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下&#xff0c…

想学Python高级编程?必须了解这个小技巧:match-case!

大家好,这里是程序员晚枫,小破站/知乎/小红书/抖音都叫这个名字。 上次给大家分享了Python高级编程第一讲:从使用类型提示开始 ;今天分享Python高级编程第二讲:深入解析Python中switch case的使用方法。 写在前面 分…

巧用NGINX配置解决跨域问题

页面nginx配置 1,前端页面放在域名根目录,比如,http://www.xuecheng.com/ ,对应的nginx配置: #门户location / {alias D:/Z_lhy/SpringCloud/xuecheng_online/www/xc-ui-pc-static-portal/;index index.html;} 页…

基于STM32设计的人体健康检测仪

一、项目介绍 当前文章介绍基于STM32设计的人体健康检测仪。设备采用STM32系列MCU作为主控芯片,配备血氧浓度传感器(使用MAX30102血氧浓度检测传感器)、OLED屏幕和电池供电等外设模块。设备可以广泛应用于医疗、健康等领域。可以帮助医生和病…

平板光波导中导模的(注意不是泄露模)传播常数β的matlab计算(验证了是对的)

参照的是导波光学_王建(清华大学)的公式(3-1-2、3-1-3),算的参数是这本书的图3-3的。 function []PropagationConstantsMain() clear;clc;close all lambda01.55;%真空或空气中的入射波长,单位um k02*pi/lambda0; m3;%导模阶数(需要人为指定) n11.62;%芯…

网络知识点之-路由

本文章收录至《网络》专栏,点击右上角专栏图标可访问本专栏! 路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程。路由工作在OSI参考模型第三层——网络层的数据包转发设备。路由器通过转发数据包来…

MySQL数据库配置及创建用户和授权

注意: 都是基于MySQL8.0以上版本 1、检查是否安装过sql [rootlocalhost ~]# rpm -[qa](https://so.csdn.net/so/search?qqa&spm1001.2101.3001.7020) | grep mysql[rootlocalhost ~]# rpm -qa | grep [mariadb](https://so.csdn.net/so/search?qmariadb&…

Spark(37):Streaming DataFrame 和 Streaming DataSet 创建

目录 0. 相关文章链接 1. 概述 2. socket source 3. file source 3.1. 读取普通文件夹内的文件 3.2. 读取自动分区的文件夹内的文件 4. kafka source 4.1. 导入依赖 4.2. 以 Streaming 模式创建 Kafka 工作流 4.3. 通过 Batch 模式创建 Kafka 工作流 5. Rate Source…

随笔03 考研笔记整理

图源:文心一言 上半年的博文整理,下半年依然会更新考研类的文章,有需要的小伙伴看向这里~~🧩🧩 另外,这篇文章可能是我上半年的努力成果之一,因此仅关注博主的小伙伴能够查看它~~&#x1f9e…

嵌入式系统中的GPIO控制:从理论到实践与高级应用

本文将探讨嵌入式系统中的GPIO(通用输入输出)控制,着重介绍GPIO的原理和基本用法。我们将使用一个实际的示例项目来演示如何通过编程配置和控制GPIO引脚。将基于ARM Cortex-M微控制器,并使用C语言进行编写。 GPIO是嵌入式系统中最常见且功能最强大的接口之一。它允许硬件工…

基于RK3588+FPGA+AI算法定制的智慧交通与智能安防解决方案

随着物联网、大数据、人工智能等技术的快速发展,边缘计算已成为当前信息技术领域的一个热门话题。在物联网领域,边缘计算被广泛应用于智慧交通、智能安防、工业等多个领域。因此,基于边缘计算技术的工业主板设计方案也受到越来越多人的关注。…

linux 指令 第3期

cat cat 指令: 首先我们知道一个文件内容属性 我们对文件操作就有两个方面:对文件内容和属性的操作 扩展:echo 指令 直接打印echo后面跟的字符串 看: 这其实是把它打印到了显示器上,我们也可以改变一下它的打印位置…

网络层中一些零碎且易忘的知识点

异构网络:指传输介质、数据编码方式、链路控制协议以及数据单元格式和转发机制不同,异构即物理层和数据链路层均不同RIP、OSPF、BGP分别是哪一层的协议: -RIPOSPFBGP所属层次应用层网络层应用层封装在什么协议中UDPIPTCP 一个主机可以有多个I…

Bootloader

Bootloader 一段有下载和引导功能的程序 下载应用程序引导使MCU运行在应用程序中,只在有更新请求或者APP无效的时候才会激活 APP和Bootloader都存在Flash中Flash Driver用来擦除APP,下载临时存放在RAM中,下载完成后复位释放。一般随用随下&a…

Pytorch个人学习记录总结 玩俄罗斯方块の深度学习小项目

目录 前言 模型成果演示 训练过程演示 代码实现 deep_network tetris test train 前言 当今,深度学习在各个领域展现出了惊人的应用潜力,而游戏开发领域也不例外。俄罗斯方块作为经典的益智游戏,一直以来深受玩家喜爱。在这个项目中&…

Python web实战 | 用 Flask 框架快速构建 Web 应用【实战】

概要 Python web 开发已经有了相当长的历史,从最早的 CGI 脚本到现在的全栈 Web 框架,现在已经成为了一种非常流行的方式。 Python 最早被用于 Web 开发是在 1995 年(90年代早期),当时使用 CGI 脚本编写动态 Web 页面…

spring启动流程 (6完结) springmvc启动流程

SpringMVC的启动入口在SpringServletContainerInitializer类,它是ServletContainerInitializer实现类(Servlet3.0新特性)。在实现方法中使用WebApplicationInitializer创建ApplicationContext、创建注册DispatcherServlet、初始化ApplicationContext等。 SpringMVC…

68. 文本左右对齐

题目链接:力扣 解题思路:遍历单词数组,确定每一行的单词数量, 之后就可以得到每一个需要补充的空格数量。从而得到单词之间需要补充的空格数量。具体算法如下: 确定每一行的单词数量 初始值: num 0&…

【JavaWeb】正则表达式

🎄欢迎来到边境矢梦的csdn博文,本文主要讲解Java 中正则表达式 的相关知识🎄 🌈我是边境矢梦,一个正在为秋招和算法竞赛做准备的学生🌈 🎆喜欢的朋友可以关注一下🫰🫰&am…