当前位置: 首页 > news >正文

Linux运维——Vim基础

Vim基础

  • 一、移动光标
    • 1.1、基础移动
    • 1.2、屏幕滚动
  • 二、编辑操作
    • 2.1、插入模式
    • 2.2、删除与修改
    • 2.3、复制粘贴
  • 三、搜索与替换
    • 3.1、搜索
    • 3.2、替换
  • 4、分屏与窗口管理
    • 4.1、分屏操作
    • 4.2、窗口调整
  • 五、宏与批量操作
  • 六、效率技巧

一、移动光标

1.1、基础移动

快捷键作用
h j k l左/下/上/右移动
w跳到下一个单词开头
b跳到上一个单词开头
e跳到当前单词末尾
0跳到行首
^跳到行首第一个非空白字符
$跳到行尾
gg跳到文件第一行
G跳到文件最后一行
:n跳到第 n 行(如 :10 跳第 10 行)

1.2、屏幕滚动

快捷键作用
Ctrl+u向上滚动半屏
Ctrl+d向下滚动半屏
Ctrl+b向上滚动整屏
Ctrl+f向下滚动整屏
zz当前行居中显示
zt当前行置顶
zb当前行置底

二、编辑操作

2.1、插入模式

快捷键作用
i在光标前插入
a在光标后插入
I在行首插入
A在行尾插入
o在下方插入新行
O在上方插入新行

2.2、删除与修改

快捷键作用
x删除当前字符
dw删除当前单词
dd删除当前行
D删除到行尾
cw修改当前单词(删除并进入插入模式)
cc修改整行
r替换单个字符
R进入替换模式(连续替换)

2.3、复制粘贴

快捷键作用
yy复制当前行
yw复制当前单词
p粘贴到光标后
P粘贴到光标前
"ayy复制当前行到寄存器 a
"ap粘贴寄存器 a 的内容

三、搜索与替换

3.1、搜索

快捷键作用
/keyword向前搜索 keyword
?keyword向后搜索 keyword
n跳转到下一个匹配项
N跳转到上一个匹配项
*搜索当前光标下的单词

3.2、替换

命令作用
:s/old/new替换当前行第一个 old
:s/old/new/g替换当前行所有 old
:%s/old/new/g替换全文所有 old
:%s/old/new/gc替换全文并每次确认

4、分屏与窗口管理

4.1、分屏操作

快捷键作用
:sp水平分屏
:vsp垂直分屏
Ctrl+w h/j/k/l跳转到左/下/上/右窗口
Ctrl+w w循环切换窗口
Ctrl+w c关闭当前窗口
Ctrl+w o关闭其他窗口

4.2、窗口调整

快捷键作用
Ctrl+w +增加窗口高度
Ctrl+w -减少窗口高度
Ctrl+w >增加窗口宽度
Ctrl+w <减少窗口宽度
Ctrl+w =所有窗口等宽等高

五、宏与批量操作

快捷键作用
qa开始录制宏到寄存器 a
q停止录制
@a执行寄存器 a 的宏
@@重复执行上一次宏
:normal @a对选中行执行宏 a
  1. 按 qa 开始录制 → 执行操作(如 dd 删除行)→ 按 q 结束录制
  2. 执行 @a 重复删除操作

六、效率技巧

组合操作:

  • dap:删除整个段落
  • cis:修改当前句子

文本对象:

  • viw:选中当前单词
  • vip:选中当前段落

重复操作:

  • 10j:向下移动 10 行
  • 5dd:删除 5 行

相关文章:

Linux运维——Vim基础

Vim基础 一、移动光标1.1、基础移动1.2、屏幕滚动 二、编辑操作2.1、插入模式2.2、删除与修改2.3、复制粘贴 三、搜索与替换3.1、搜索3.2、替换 4、分屏与窗口管理4.1、分屏操作4.2、窗口调整 五、宏与批量操作六、效率技巧 一、移动光标 1.1、基础移动 快捷键作用h j k l左/…...

从外卖大战看O2O新趋势:上门私厨平台系统架构设计解析

京东高调进军外卖市场&#xff0c;美团全力防守&#xff0c;两大巨头的竞争让整个行业风起云涌。但在这场外卖大战之外&#xff0c;一个更具潜力的细分市场正在悄然兴起——上门私厨服务。 与标准化外卖不同&#xff0c;上门私厨提供的是个性化定制服务。厨师带着新鲜食材上门现…...

【网络编程】ARP协议与主机之间的通信

1. 什么是ARP协议&#xff1f; ARP&#xff08;地址解析协议&#xff0c;Address Resolution Protocol&#xff09; 是一种用于在网络中将IP地址转换为MAC地址的协议。它属于TCP/IP协议栈中的网络层协议&#xff0c;通常在局域网&#xff08;LAN&#xff09;环境下使用&#x…...

JVM模型、GC、OOM定位

JVM模型 程序计数器 程序计数器是一块较小的内存空间&#xff0c;可以看作是当前线程所执行的字节码的行号指示器。字节码解释器工作时通过改变这个计数器的值来选取下一条需要执行的字节码指令&#xff0c;分支、循环、跳转、异常处理、线程恢复等功能都需要依赖这个计数器来…...

什么是数据链路层的CRC检测以及为什么要放到帧尾?

数据链路层在封装过程中添加CRC&#xff08;循环冗余校验&#xff09;帧尾&#xff0c;主要目的是为了检测数据传输过程中可能出现的比特错误&#xff0c;确保数据的完整性和可靠性。具体原因如下&#xff1a; 1. 错误检测 物理层传输的不可靠性&#xff1a;数据在物理介质&am…...

Electron 入门指南

Electron 入门指南 Electron 是一个使用 JavaScript、HTML 和 CSS 构建跨平台桌面应用的框架。通过 Electron&#xff0c;你可以利用 Web 技术开发出功能强大的桌面应用程序&#xff0c;并且能够运行在 Windows、Mac 和 Linux 系统上。 本文将带你从零开始构建一个简单的 Ele…...

目标检测YOLO实战应用案例100讲- 无人机平台下露天目标检测与计数

目录 知识储备 基于YOLOv8改进的无人机露天目标检测与计数 一、环境配置与依赖安装 二、核心代码实现(带详细注释) 1. 改进YOLOv8模型定义(添加注意力机制) 2. 无人机视角数据增强(drone_augment.py ) 3. 多目标跟踪与计数(tracking_counter.py ) 4. 完整推理流…...

ArkTS基础实验 (二)

任务一&#xff1a;使用模板字符串相关知识&#xff0c;实现多个变量的拼接。同学们可以把自己的姓名、年纪和爱好这三个变量进行拼接。把代码和日志中console.log的打印结果截图保留。 预期效果&#xff1a; 任务二&#xff1a;使用状态变量和点击事件相关知识实现计数器案例…...

【计算机视觉】Bayer Pattern与Demosaic算法详解:从传感器原始数据到彩色图像

Bayer Pattern与Demosaic算法详解&#xff1a;从传感器原始数据到彩色图像 一、引言 在现代数码相机和手机摄像头中&#xff0c;我们能够拍摄到丰富多彩的彩色图像。然而&#xff0c;你可能不知道的是&#xff0c;图像传感器本身并不能直接感知颜色——它们只能感知光的强度。…...

媒体查询使用

一、引言 为了确保网页在不同设备上都能提供良好的用户体验&#xff0c;响应式设计变得至关重要。而媒体查询&#xff08;Media Queries&#xff09;就是前端开发中实现响应式设计的核心技术之一。 二、媒体查询的概念 媒体查询是 CSS3 引入的一项强大功能&#xff0c;它允许开…...

deepseek对IBM MQ SSL 证书算法的建议与解答

在IBM MQ配置SSL TLS的命令中&#xff0c;如果参数SSLCIPH使用TLS_RSA_WITH_AES_128_CBC_SHA256&#xff0c;如下所示&#xff1a; DEFINE CHANNEL(QM1.TO.QM2) CHLTYPE(SDR) TRPTYPE(TCP) CONNAME(QM1.MACH.COM) XMITQ(QM2) SSLCIPH(TLS_RSA_WITH_AES_128_CBC_SHA256) DESCR(S…...

服务器文件同步工具有哪些?

服务器文件同步工具的选择取决于你的具体需求(如实时同步、单向/双向同步、跨平台支持、安全性等)。以下是几款主流的服务器文件同步工具推荐,适用于不同场景: 1. 实时同步工具(适合高频率、低延迟需求) rsync 特点:经典增量同步工具,支持本地/远程同步,高效节省带宽。…...

Numpy数组与矩阵——python学习

我前面提到过Numpy函数&#xff0c;但是不够全&#xff0c;在这里我顺便做一些补充。先说明一下我用的是Notebook。 一、数组的创建与操作 1、把列表转换为数组 np.array([1,2,3,4,5]) 2、把元组转换为数组 np.array((1,2,3,4,5)) 3、把range对象转换为数组 np.array(rang…...

CasaOS上部署1Panel开源运维面板远程在线访问配置实操指南

文章目录 前言1. 添加镜像源2. 部署1Panel3. 本地访问测试4. 安装内网穿透工具5. 配置公网地址6. 配置固定公网地址 前言 很多时候在尝试远程管理服务器时&#xff0c;常常会遇到各种各样的麻烦&#xff0c;尤其是缺乏公网IP或者路由器设置过于复杂时&#xff0c;更是让人感到…...

深入理解缓存淘汰策略:LRU 与 LFU 算法详解及 Java 实现

一、LRU (Least Recently Used - 最近最少使用) LRU 策略的核心思想是&#xff1a;当缓存空间不足时&#xff0c;优先淘汰最近最长时间未被访问的数据。它基于“时间局部性”原理&#xff0c;即最近被访问的数据&#xff0c;在未来被访问的概率也更高。 LeetCode 146. LRU 缓…...

小智项目架构分析

小智代码架构 .github 这就是github项目上拉下来的一些信息 没什么好看的&#xff0c;这跟项目代码无关 .build 编译时生成的文件&#xff0c;没什么可看的&#xff0c;与项目代码无关 .main 主要的代码都在这里面了 .managed_components 这里是小智用到的一些第三方移植…...

基于 SSE 和分块传输的 Uniapp 微信小程序 实现 流式传输 对话

最近的项目是做微信小程序的一个对话框&#xff0c;接入DeepSeek&#xff0c;实现实时对话一个功能。 主要用到的技术点为&#xff1a; 1. Server-Sent Events (SSE) 技术&#xff1a; 在请求头中设置了 ‘X-DashScope-SSE’: ‘enable’&#xff0c;启用了SSE协议 服务器以事…...

[OS] POSIX C库介绍

POSIX C 库可以理解为 Unix/Linux系统的"标准化工具包"&#xff0c;用一句话概括就是&#xff1a; &#x1f449; 它提供了一套跨Unix系统的统一编程接口&#xff0c;让开发者用同一份代码能在不同系统&#xff08;如Linux、macOS&#xff09;中运行。 核心组成&…...

<uniapp><插件><UTS>在uniapp中,创建自己的插件并发布到uni插件市场

前言 本专栏是基于uniapp实现手机端各种小功能的程序&#xff0c;并且基于各种通讯协议如http、websocekt等&#xff0c;实现手机端作为客户端&#xff08;或者是手持机、PDA等&#xff09;&#xff0c;与服务端进行数据通讯的实例开发。 发文平台 CSDN 环境配置 系统&…...

深度学习前沿探秘:Transformer 模型与多领域应用

技术点目录 注意力&#xff08;Attention&#xff09;机制详解自然语言处理&#xff08;NLP&#xff09;领域的Transformer模型详解计算视觉&#xff08;CV&#xff09;领域的Transformer模型详解时间序列建模与预测的大语言模型目标检测算法详解目标检测的大语言模型语义分割的…...

介绍下Nginx的作用与请求转发机制

引言 最近笔者在业务中遇到了Nginx轮训策略使用不当导致后端服务的压力增加&#xff0c;从而导致容器CPU资源不足&#xff0c;响应超时的问题&#xff1b; 但由于对Nginx的了解仅限与作为反向代理使用&#xff0c;所以借用GPT工具整理了Nginx的作用以及请求转发机制&#xff…...

Sql刷题日志(day6)

一、笔试 1、insert ignore&#xff1a;在插入数据时忽略主键冲突或其他唯一性约束冲突。 如果插入的记录会导致主键冲突&#xff08;如 actor_id 已存在&#xff09;&#xff0c;该语句不会报错&#xff0c;而是直接忽略插入操作 语法&#xff1a; INSERT IGNORE INTO tab…...

Ajax 提交表单与文件上传

目录 一、Ajax 提交表单1.1 基本原理1.2 HTML 表单示例1.3 JavaScript 示例(使用 fetch API)二、Ajax 文件上传2.1 基本原理2.2 HTML 文件上传表单示例2.3 JavaScript 示例(使用 fetch API)三、后端处理示例(以 Node.js + Express 为例)3.1 安装依赖3.2 创建服务器文件四…...

【零基础入门】ASP.NET Core快速搭建第一个Web应用

一、为什么选择ASP.NET Core&#xff1f; 跨平台支持&#xff1a;可在Windows/macOS/Linux系统运行 高性能&#xff1a;比传统ASP.NET框架快10倍以上 开源生态&#xff1a;活跃的开发者社区和丰富的NuGet包 云原生支持&#xff1a;完美适配Docker和Kubernetes部署 二、开发…...

盒子模型

1.1看透网页布局的本质 1.2盒子模型的组成部分 css盒子模型本质是一个盒子&#xff0c;封装周围的html元素&#xff0c;它包括边框 外边距 内边距和实际内容。 padding&#xff1a;盒子与内容间的距离margin&#xff1a;盒子与盒子间的距离 1.3border边框 1.border-width 边…...

厚铜PCB如何兼顾质量与成本?供应商设计规范执行的黄金平衡点

厚铜电路板供应商需要遵循一系列设计规范&#xff0c;以确保所提供的电路板符合行业标准和客户要求。以下是一些需要遵循的设计规范&#xff1a; 1. 电路板尺寸和形状&#xff1a;厚铜电路板供应商需要按照客户提供的规格和要求来设计电路板的尺寸和形状。一般来说&#xff0c;…...

Kafka 配置参数性能调优建议

文章目录 1、生产者调优batch.size&#xff08;重要&#xff09;linger.mscompression.typeacks&#xff08;重要&#xff09;buffer.memorymax.in.flight.requests.per.connection&#xff08;重要&#xff09;message.max.bytes&#xff08;重要&#xff09; 2、消费者调优fe…...

Java读Excel:解析阿里云easyExcel导入文件的行号

文章目录 引言I 解析阿里云easyExcel导入文件的行号声明解析对象的基类判断Excel解析对象类型是否包含继承某个类 isAssignableFromJava 转换list类型并设置下标到元素对象属性II 封装excel 文件读取excel 文件读取用法文件导入上下文III 参数校验工具类校验参数是否合法 (jaka…...

Vuex持续保存数据 页面刷新不丢失 vuex-persistedstate

vuex可以进行全局的状态管理&#xff0c;但刷新后刷新后数据会消失&#xff0c;这是我们不愿意看到的。怎么解决呢&#xff0c;我们可以结合本地存储做到数据状态持久化&#xff0c;但是太麻烦每次都要操作&#xff0c;强烈建议使用插件利用vuex-persistedstate插件. 安装 npm …...

.NET8配置组件

一、组件的概念 含义:用于从配置文件中读取配置的组件,叫做配置组件。简单来说, 就是从xml、json、yaml、txt等文件中读取配置的组件。主要采用微软提供的 Microsoft.Extensions.Configuration 二、组件的使用 1、json配置读取 (1)、在Dunk.Common.Project.Configuratio…...

加密算法:ed25519和RSA

ed25519 和 RSA 是两种不同的非对称加密算法,常用于 SSH 密钥认证。以下是它们的对比和选择建议: 1. 算法对比 特性ed25519RSA (4096-bit)安全性更高(基于椭圆曲线密码学 ECC)高(依赖大数分解难度)密钥长度固定 256 位(公钥/私钥更短)通常 2048/4096 位(公钥较大)性能…...

递归、搜索和回溯算法《递归》

在之前的优选算法当中我们已经学习了一些基本的算法&#xff0c;那么接下来我们就要来学习算法当中的一大重要章节——递归、搜索和回溯算法&#xff0c;其实也就是大家常常听到的dfs、bfs&#xff1b;其实本质就是递归&#xff0c;在学习搜索、回溯等算法的过程当中我们会先来…...

构建“云中”高并发:12306技术改造的系统性启示

作为曾参与12306余票查询系统高并发升级的技术从业者&#xff0c;笔者注意到公众对于12306底层技术常存在认知盲区。为破解这一迷思&#xff0c;特此分享十年前的架构解密文献&#xff08;该技术之前名叫 gemfire 现已晋升为Apache顶级项目Geode&#xff0c;代码库详见&#xf…...

升级xcode15 报错Error (Xcode): Cycle inside Runner

升级xcode15后报错 Could not build the precompiled application for the device. Error (Xcode): Cycle inside Runner; building could produce unreliable results. This usually can be resolved by moving the shell script phase Thin Binary so that it runs before th…...

gradle-tasks.register(‘classesJar‘, Jar)解析

在使用gradle作为构建工具的android或者java web项目中&#xff0c;我们经常能遇到以下格式 tasks.register(classesJar, Jar) {from "$buildDir/intermediates/javac/release/classes" // 假设使用 release 构建变体 }artifact sourcesJar使用伪代码解释 class Cu…...

深度对比:Objective-C与Swift的RunTime机制与底层原理

1. RunTime简介 RunTime&#xff08;运行时&#xff09;是指程序在运行过程中动态管理类型、对象、方法等的机制。Objective-C 和 Swift 都拥有自己的运行时系统&#xff0c;但设计理念和实现方式有很大不同。理解 RunTime 的底层原理&#xff0c;是掌握 iOS 高级开发的关键。…...

升级Xcode16,flutter项目报错

升级xcode16后发现原来的项目运行不了了&#xff0c;flutter的版本是3.3.1 保错&#xff1a;[ 304 ms] Could not build the precompiled application for the device. [ 16 ms] Error (Xcode): linker command failed with exit code 1 (use -v to see invocation) 1、找到本地…...

MCU内存映射技术详解

MCU内存映射技术详解 1. 引言 内存映射是微控制器(MCU)系统设计中的核心概念&#xff0c;它决定了MCU如何访问和管理内存资源。通过内存映射&#xff0c;处理器可以将物理设备的地址空间映射到自己的逻辑地址空间中&#xff0c;实现对各种硬件资源的统一访问。本文将深入探讨…...

Mac搭建Flutter IOS环境详细指南

目录 1. 准备工作 2. 下载Flutter SDK&#xff1a; 2.1 配置环境 2.2 解决环境报错 zsh:command not found:flutter 2.3、再使用source命令重新加载一下&#xff1a;【source ~/.zshrc】,下次再编辑这个文件就可以直接执行&#xff1a;【open ~/.zshrc】 2.4、执行【flut…...

计算机基础—(九道题)

1. 流程控制题 编写一个程序&#xff0c;输入一个整数&#xff0c;判断它是否是素数&#xff08;质数&#xff09;。 如果是素数&#xff0c;输出Yes&#xff0c;否则输出No。 #include <stdio.h> int main() /* 1. 流程控制题编写一个程序&#xff0c;输入一个整数&…...

蓝桥杯2025年第十六届省赛真题-可分解的正整数

其实只有1不符合要求&#xff0c;因为-1010&#xff0c;作为对称结构&#xff0c;任何数都可以改成加法&#xff0c;比如4-3-2-101234&#xff0c;但因为最小连续的数为3,1恰好在里面&#xff0c;所以1不行。 #include<bits/stdc.h> using namespace std; #define int l…...

Linux虚拟机无法重启网络

这是为什么啊&#xff1f;试了很多种方法都还是失败。 这是本机vmware8的网络配置 这是linux虚拟机的nat配置 这是虚拟机里静态配置的网络 有没有可以答疑解惑一下的&#xff1f;...

8.Android(通过Manifest配置文件传递数据(meta-data))

配置文件 <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools"><applicationandroid:allowBackup"tr…...

17:00开始面试,17:08就出来了,问的问题有点变态。。。

从小厂出来&#xff0c;没想到在另一家公司又寄了。 到这家公司开始上班&#xff0c;加班是每天必不可少的&#xff0c;看在钱给的比较多的份上&#xff0c;就不太计较了。没想到4月一纸通知&#xff0c;所有人不准加班&#xff0c;加班费不仅没有了&#xff0c;薪资还要降40%…...

Docker 常用命令(涵盖多个方面)

Docker 命令完整列表&#xff08;表格形式&#xff09; 类别 命令 描述 示例 Docker 服务管理 sudo systemctl start docker 启动 Docker 守护进程 sudo systemctl start docker sudo systemctl stop docker 停止 Docker 守护进程&#xff0c;需先停止所有容…...

前缀树(Trie)(字典树)

做leetcode的时候看到前缀树&#xff0c;听都没听过&#xff0c;后来才知道前缀树就是字典树。之前学过&#xff0c;在OJ项目中用字典树来实现黑白名单限制。浅浅复习一下吧 用字典树来实现黑白名单限制 实现步骤 &#xff08;1&#xff09;定义黑名单 import java.util.Arra…...

word插入APA格式的参考文献

word插入APA格式的参考文献并实现交叉引用 1. 直接手写并采用超链接 2. 使用zotero插入参考文献后采用超链接(前提下载zotero和对应的插件) 1. 直接手写 APA格式生成 1. 在需要插入参考文献的地方手写格式&#xff0c;如下。 2. 生成书签 名字随便填的&#xff0c;&#x…...

n8n部署docker本地化备份和数据持久化和迁移问题

问题总结&#xff1a; 在一开始的操作中&#xff0c;你遇到的主要问题是 Docker 容器内的文件权限导致了文件无法正确写入和修改&#xff0c;尤其是在复制本地备份文件到容器内时。具体问题表现为&#xff1a; 复制文件后&#xff0c;容器内文件权限错误&#xff1a;你使用 do…...

绘制板块层级图

目录 【实验目的】 【实验原理】 【实验环境】 【实验步骤】 【实验总结】 【实验目的】 掌握数据文件读取掌握数据处理的方法实现板块层级图的绘制 【实验原理】 板块层级图&#xff08;treemap&#xff09;是一种基于面积的可视化方式&#xff0c;通过每一个板块&…...

国标云台控制状态

1.基本概念 国标联网系统的信息传输、交换、控制方面的都是通过SIP服务器负责通讯得&#xff0c;SIP负责信令流逐级转发。其中最重要的一部分就是和摄像机进行信令交互。 像安全注册、实时视音频点播、历史视音频的回放等应用的会话控制采用IETFRFC3261规定的Register、Invite等…...