Linux vim编辑器常用知识

Vim 是 Linux 中一个强大的文本编辑器,以其高效的键盘操作和丰富的功能而闻名

Vim 的基本概念

  1. 模式:Vim 有三种主要模式:

    • 普通模式 (Normal Mode):默认模式,用于浏览和编辑文本。
    • 插入模式 (Insert Mode):用于输入文本。
    • 命令行模式 (Command-line Mode):用于输入命令。
  2. 进入 Vim:在终端输入 vim filename 来打开文件 filename。如果文件不存在,会创建一个新文件。

基本操作

切换模式

  • 普通模式:启动 Vim 时默认进入普通模式。可以按 Esc 键回到普通模式。
  • 插入模式:按 i 进入插入模式,从光标前插入;按 a 从光标后插入。
  • 命令行模式:在普通模式下按 : 进入命令行模式。

移动光标

  • h:左移
  • j:下移
  • k:上移
  • l:右移
  • w:跳到下一个单词开头
  • b:跳到上一个单词开头
  • 0:跳到行首
  • $:跳到行尾

编辑文本

  • 插入模式
    • i:在光标前插入
    • a:在光标后插入
    • o:在当前行下方新建一行并进入插入模式
  • 删除文本
    • x:删除光标所在的字符
    • dw:删除一个单词
    • dd:删除当前行
  • 复制和粘贴
    • yy:复制当前行
    • p:在光标后粘贴
  • 撤销和重做
    • u:撤销
    • Ctrl + r:重做

查找和替换

  • 查找
    • /pattern:向下查找 pattern
    • ?pattern:向上查找 pattern
    • n:查找下一个
    • N:查找上一个
  • 替换
    • :%s/old/new/g:将文件中所有 old 替换为 new
    • :s/old/new/g:将当前行的 old 替换为 new

保存和退出

  • :w:保存文件
  • :q:退出 Vim
  • :wqZZ:保存并退出
  • :q!:不保存退出

进阶操作

可视模式

  • 进入可视模式:按 v 进入字符可视模式,按 V 进入行可视模式,按 Ctrl + v 进入块可视模式。
  • 选择文本后操作:可以复制、删除、替换等。

多文件编辑

  • 打开多个文件vim file1 file2 同时打开多个文件。
  • 切换文件
    • :n:切换到下一个文件
    • :prev:N:切换到上一个文件
    • :bnext:切换到下一个缓冲区
    • :bprev:切换到上一个缓冲区

分屏操作

  • 水平分屏:split:sp
  • 垂直分屏:vsplit:vsp
  • 切换窗口Ctrl + w + wCtrl + w 再按方向键

宏录制

  • 录制宏:按 q 然后按一个字母开始录制,完成后再按 q 停止录制。
  • 播放宏:按 @ 然后按录制时的字母。
  • 网络建设与运维-网络安全讨论组:715170200

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

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

相关文章

【Redis】复制(Replica)

文章目录 一、复制是什么?二、 基本命令三、 配置(分为配置文件和命令配置)3.1 配置文件3.2 命令配置3.3 嵌套连接3.4 关闭从属关系 四、 复制原理五、 缺点 以下是本篇文章正文内容 一、复制是什么? 主从复制 master&#xff…

GloVe: Global Vectors for Word Representation论文笔记解读

基本信息 作者Jeffrey Penningtondoi10.3115/v1/D14-1162发表时间2014期刊EMNLP网址https://aclanthology.org/D14-1162.pdf 研究背景 1. What’s known 既往研究已证实 全局矩阵分解方法:LSA,考虑整个语料库词频的统计信息得到共现矩阵,通…

根据视图矩阵, 恢复相机的世界空间的位置

根据视图矩阵, 恢复相机的世界空间的位置 一、方法1 glsl 实现: // 从本地局部坐标系(相机空间) 到 世界空间的旋转变换 mat3 getLocal2WorldRotation() {mat3 world2localRotation mat3(viewMatrix[0].xyz,viewMatrix[1].xyz,viewMatrix[2].xyz);return inverse(world2loca…

C++ 项目实践课设 图书馆管理系统

一、项目介绍 (1)图书管理 (a)添加图书:在系统中增加图书信息(可自己设计图书的信息:如书号,书名,出版社,等等) (b)查询图书 (c)编辑图书 (d)删除图书 (2&a…

十个必须知道的物流术语(一)

我们日常生活中的每一个包裹,都承载着物流人的辛勤与智慧。 以下物流领域中的专业术语,常常在企业的物流管理中发挥着关键作用。 关于物流的基本概念 01 物流成本 产品在实物运动过程中,如包装、搬运装卸、运输、储存、流通加工等各个活动…

汽车零配件行业看板管理系统应用

生产制造已经走向了精益生产,计算时效产出、物料周转时间等问题,成为每一个制造企业要面临的问题,工厂更需要加快自动化,信息化,数字化的布局和应用。 之前的文章多次讲解了企业MES管理系统,本篇文章就为大…

论文er们,YOLO这口饭得趁热吃

不知道各位有没有看出来,从去年开始YOLO相关的论文就处于一个井喷式状态,SCI各区都能见到它的身影。 这是因为YOLO其实是个很好发论文的方向,需求量很大,热度高,并且好入门,能获取的资源也很多。写论文时一…

JWT (JSON Web Token) 立即失效

使一个 JWT (JSON Web Token) 立即失效可以通过多种方式实现,取决于具体的实现和系统需求。以下是几种常见的方法: 方法一:黑名单机制 适用场景: 需要在特定情况下立即使某个 JWT 失效。 可以接受额外的存储和查询开销。 实现方…

宾馆酒店电视信号高清改造-广电信号接入数字电视同轴高清传输系统应用

宾馆酒店电视信号高清改造-广电信号接入数字电视同轴高清传输系统应用 由北京海特伟业科技有限公司任洪卓发布于2024年7月12日 一、宾馆酒店广电信号接入数字电视同轴高清传输系统建设背景 在当今数字化快速发展的时代,宾馆酒店作为服务行业的重要组成部分&#x…

idea修改全局配置、idea中用aliyun的脚手架,解决配置文件中文乱码

idea修改全局配置 idea中用aliyun的脚手架,创建springBoot项目 解决配置文件中文乱码

解决fidder小黑怪倒出JMeter文件缺失域名、请求头

解决fidder小黑怪倒出JMeter文件缺失域名、请求头 1、目录结构: 2、代码 coding:utf-8 Software:PyCharm Time:2024/7/10 14:02 Author:Dr.zxyimport zipfile import os import xml.etree.ElementTree as ET import re#定义信息头 headers_to_extract [Host, Conn…

内网安全:权限维持的各种姿势

1.Linux权限维持 2.Windows权限维持 目录: 一.Linux权限维持: 1.webshell: 2.定时任务: 3.SUID后门: 4.SSH Key免密登录后门: 5.添加用户后门: 二.Windows权限维持 1.计划任务后门&…

在 Java 中:为什么不能在 static 环境中访问非 static 变量?

在 Java 中:为什么不能在 static 环境中访问非 static 变量? 1、静态(static)变量2、非静态(非static)变量3、为什么不能访问?4、如何访问?5、总结 💖The Begin&#x1f…

2024年用于在 Python 中构建 API 的 8 个开源框架

什么是API? API是一个软件解决方案,作为中介,使两个应用程序能够相互交互。以下一些特征让API变得更加有用和有价值: 遵守REST和HTTP等易于访问、广泛理解和开发人员友好的标准。API不仅仅是几行代码;这些是为移动开…

安装WindowsTerminal并设置默认以管理员身份运行启动终端

安装WindowsTerminal并设置默认以管理员身份运行启动终端 背景:Microsoft Store打不开,且WindowsTerminal没有默认以管理员身份运行。 下载msixbundle类型的安装包:https://github.com/microsoft/terminal/releases 使用管理员运行Windows …

[RK3308H_Linux] 关于8+2(8路模拟麦克风 + 2路es7243e回采)的调试心得

问题描述 RK3308H 使用8路个模拟麦克风录音,2路用es7243e做回采 解决方案: 首先先调8路模拟麦克风,根据原理图确定使用的是哪路I2S。 以下为dts配置,acodec的属性注释附上。 &acodec {status "okay";rockchip,m…

springBoot(若依)集成camunda

1、下图为项目结构 2、最外层 pom引入依赖 <properties><!--camunda 标明版本&#xff0c;注意要个自己的Spring 版本匹配&#xff0c;匹配关系自行查询官网--><camunda.version>7.18.0</camunda.version> </properties> 3、common模块引入依赖 …

retrofit实现原理

Retrofit 是一个用于 Java 和 Kotlin 的类型安全的 HTTP 客户端&#xff0c;它将 RESTful API 的抽象转换为 Java 接口&#xff0c;使得网络请求变得更加简洁和可读。Retrofit 的实现主要依赖于注解处理器和动态代理机制。下面结合源码分析 Retrofit 的实现原理&#xff1a; R…

靖江美食元宇宙

汉堡是一种流行于世界各地的快餐食品&#xff0c;它的主要成分通常包括一个或多个肉饼&#xff08;最常见的是牛肉饼&#xff09;&#xff0c;放在圆形的面包中间&#xff0c;周围可以添加各种配料和调味品&#xff0c;如生菜、番茄、洋葱、酸黄瓜、奶酪以及各种酱汁&#xff0…

Python 开发植物大战僵尸杂交版辅助【全网最详细_查找 + 代码编写一体化零基础也能学会】

目录 辅助最终展示效果 一、文章介绍 二、工具介绍 三、基址搜索 3.1、寻找阳光基址 3.2、寻找卡槽冷却基址 3.3、寻找僵尸刷新时间基址 3.4、寻找大阳光刷新时间基址 3.5、寻找植物编号基址 3.6、寻找场上僵尸数量基址 3.7、寻找僵尸 X 坐标基址 3.8、通过找到的僵…