Linux Vi编辑器基础操作指南

Linux Vi编辑器基础操作指南

在这里插入图片描述

Linux中的Vi是一个强大的文本编辑器,虽然它有一些陡峭的学习曲线,但一旦掌握了基本操作,它就变得非常高效。以下是Vi编辑器的一些基本用法:

  1. 打开Vi编辑器:

    vi 文件名
    
  2. 退出Vi编辑器:

    • 保存并退出:按下Esc键,然后输入:wq并按下Enter
    • 不保存并退出:按下Esc键,然后输入:q!并按下Enter
    • 如果有未保存的更改,Vi会阻止你退出,可以输入:q并按下Enter来退出。
  3. 插入文本:

    • 进入插入模式:按下i键。
    • 在当前光标位置插入文本。
  4. 保存文件:

    • 进入命令模式:按下Esc键。
    • 输入:w并按下Enter
  5. 另存为文件:

    • 进入命令模式:按下Esc键。
    • 输入:w 文件名并按下Enter
  6. 删除字符或行:

    • 删除当前字符:按下x键。
    • 删除当前行:在命令模式下输入dd
  7. 撤销操作:

    • 进入命令模式:按下Esc键。
    • 输入:u并按下Enter来撤销上一步操作。
  8. 复制和粘贴文本:

    • 复制当前行:在命令模式下输入yy
    • 粘贴复制的文本:在命令模式下输入p
  9. 移动光标:

    • 向上移动光标:按下k键。
    • 向下移动光标:按下j键。
    • 向左移动光标:按下h键。
    • 向右移动光标:按下l键。
  10. 搜索文本:

    • 进入命令模式:按下Esc键。
    • 输入/要搜索的文本并按下Enter
    • 使用nN键在搜索结果之间进行导航。
  11. 替换文本:

    • 进入命令模式:按下Esc键。
    • 输入:%s/要替换的文本/替换后的文本/g并按下Enter来替换整个文件中的匹配项。
  12. 退出Vi编辑器并保存更改:

    • 进入命令模式:按下Esc键。
    • 输入:wq并按下Enter

这只是Vi编辑器的一些基本用法,Vi有很多高级功能和快捷键,可以根据需要进一步学习。希望这些基本操作能帮助你开始使用Vi编辑器。

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

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

相关文章

pygame - 贪吃蛇小游戏

蛇每吃掉一个身体块,蛇身就增加一个长度。为了统一计算,界面的尺寸和游戏元素的位置都是身体块长度的倍数 1. 上下左右方向键(或者ASDW键)控制蛇的移动方向 2. 空格键暂停和继续蛇的身体图片文件,复制到项目的asset\im…

Python逐日填补Excel中的日期并用0值填充缺失日期的数据

本文介绍基于Python语言,读取一个不同的列表示不同的日期的.csv格式文件,将其中缺失的日期数值加以填补;并用0值对这些缺失日期对应的数据加以填充的方法。 首先,我们明确一下本文的需求。现在有一个.csv格式文件,其第…

1.7.C++项目:仿muduo库实现并发服务器之Poller模块的设计

项目完整在: 文章目录 一、Poller模块:描述符IO事件监控模块二、提供的功能三、实现思想(一)功能(二)意义(三)功能设计 四、封装思想五、代码(一)框架&#…

轻量级网络IP扫描器WatchYourLAN

什么是 WatchYourLAN ? WatchYourLAN 是一款带有 Web GUI 的轻量级网络 IP 扫描器。支持使用不同的主题和色彩模式进行个性化设置。 准备工作 扫描网络,首先要找到对应的网络接口,一般常见的包括 eth0、lo、docker0 等,可以在 SS…

Spring的依赖注入(DI)以及优缺点

Spring的依赖注入(DI):解释和优点 依赖注入(Dependency Injection,简称DI)是Spring框架的核心概念之一,也是现代Java应用程序开发的重要组成部分。本文将深入探讨DI是什么,以及它的…

react项目从webpack迁移到vite的解决方案

虽然webpack是前端工程编译工具的王者,但是最近vite牛逼吹的震天响,说什么开发/生产打包速度甩webpack 100条街。不管是不是事实,总得尝试一下吧。 于是说干就干,在网上找了很多资料,终于搞定了,以下就是r…

[Linux]线程互斥

[Linux]线程互斥 文章目录 [Linux]线程互斥线程并发访问问题线程互斥控制--加锁pthread_mutex_init函数pthread_mutex_destroy函数pthread_mutex_lock函数pthread_mutex_unlock函数锁相关函数使用示例使用锁的细节加锁解锁的实现原理 线程安全概念常见的线程不安全的情况常见的…

C++:stl:stack、queue、priority_queue介绍及模拟实现和容量适配器deque介绍

本文主要介绍c中stl的栈、队列和优先级队列并对其模拟实现,对deque进行一定介绍并在栈和队列的模拟实现中使用。 目录 一、stack的介绍和使用 1.stack的介绍 2.stack的使用 3.stack的模拟实现 二、queue的介绍和使用 1.queue的介绍 2.queue的使用 3.queue的…

“在 ArchiMate EA 建模中的组合关系:构建块和依赖关系

简介 在企业架构(EA)建模领域,结构关系在描绘架构内静态一致性方面起着至关重要的作用。其中一个关键的结构关系是组合关系,这是 ArchiMate 语言中深植的概念,提供了一个全面的框架,用于表达元素如何组合形…

正点原子嵌入式linux驱动开发——TF-A移植

经过了之前的学习,除了TF-A的详细启动流程仍待更新,TF-A的使用和其对应的大致启动流程已经进行过了学习。但是当我们实际做产品时,硬件平台肯定会和ST官方的有区别,比如DDR容量会改变,自己的硬件没有使用到官方EVK开发…

Ubuntu使用cmake和vscode开发自己的项目,引用自己的头文件和openCV

创建文件夹 mkdir my_proj 继续创建include 和 src文件夹,形成如下的目录结构 用vscode打开项目 创建add.h #ifndef ADD_H #define ADD_Hint add(int numA, int numB);#endif add.cpp #include "add.h"int add(int numA, int numB) {return numA nu…

盒子阴影和网页布局

盒子阴影 box-shadow: 10px 10px 10px 4px rgba(0,0,0,.3);//最后一个是透明度 传统网页布局的三种方式 标准流 就是按照规定好的默认方式排列 1.块级元素:div、hr、p、h1~h2、ul、ol、dl、form、table 行内元素会按照书顺序,从左到右顺序排列&#…