Linux之编辑器vim命令
vi/vim命令:
终端下编辑文件的首选工具,号称编辑器之神
基本上分为三种模式,分别是
- 命令模式(command mode)===>输入vi的命令和快捷键,默认打开文件的时候的模式
- 插入模式(insert mode)===>进入编辑模式,可以编辑文件
- 底行模式(last line mode)===>调整文件内容
找到一张图片来展示三种模式之间的转换

常规基本操作:
- vim file #vim后面跟一个文件名打开文件,默认进入命令行模式,无法编辑文件
- 按下字母i键即可进入插入模式,注意文件左下角会出现“-----插入(黏贴)-----”
- 开始编辑文件内容
- 按下Esc键,切换到命令行模式,再按下shift+“:”组合键,进入底行模式,标志是文件左下角会出现不停闪烁的“:”,在此的后面写上wq或者q!回车,保存退出。
其他操作命令:
1移动命令,所有操作在命令行模式执行
0)默认支持方向键移动
1)向前移动:l,空格,方向右键
2)向后移动:h、方向左键
3)移动到下一行:+、ENTER、j、ctrl+n、方向下键
4) 移动到上一行:ctrl+p、方向上键
其他快捷操作:
移动到行首:0 移动到行尾:$
屏幕滚动下:ctrl+f 屏幕滚动上:ctrl+b
zt 定位到屏幕顶端 zb 屏幕定位到屏幕底端
gg定位到文件开头 G定位到文件末尾
2.编辑命令:
1) 插入iI i 在光标当前插入
I 在光标行开头插入
2) 附加 a/A a 在光标后增加
A 在光标行最后增加
3)新行 /0 o在光标行下新起一行
0 在光标行上面新起一行
4)删除x/X x删除光标所在处字符
X 删除光标前面的字符,
可以 nx /nX表示删除多少个字符
5)删除行 dd/D dd 删除光标所在行
D 从光标所在位置开始到行末位
dgg 删除光标所在行到文件开头的所有数据
dG 删除光标所在行到文件末尾的所有数据
u 用来撤销刚才的操作
6)剪切与粘贴
dd剪切一行
p 粘贴一行
7)复制与粘贴:
yy复制一行
p 粘贴一行
8)复制与移动: 底行模式下执行
:开始行,结束行 co 目标行
例如·…: 1,2 co 5 把第一行到第二行复制到第五行
:开始行,结束行 m 目标行
例如::1,2m5把第一行到第二行移动到第五行
9)移动到指定行,行号 行号G
查找与替换命令:
1)查找 在命令模式使用"/"在其后直接写需要查询的
关键字 然后>回车 ==》 n/N 来查询
n 表示从光标处开始往下找
N 表示从光标处开始往上找
/\ <xx\> 表示严格匹配查找xx字符
比如: /\<printf\>==>严格匹配,只查找该单词
./printf.....==>模糊匹配,只要包含该单词都高亮显示
在当前文档中严格匹配查找单词printf
2)替换:g/s1/s//s2/g
将文件中所有的s1字符串都替换成s2,
s1和s2可以使字母也可以是字符
比如::g/printf/s//PRINTF/g
将当前文档中所有的小写printf全部替换成大写的printf
其他常用操作:
u 撤销刚才的操作 重复刚才的动作
挂起 ctrl+z 恢复fg
关键字补齐 ctrl+n 自动缩进 "='
高亮显示...% :sp(:vsp) 文件名横(纵)向窗口, ctrl+w 多窗口切换
显示不同…:set diff 去掉显示不同语法:set nodiff
保存退出命令:
wq 保存退出 :·q.不保存退出 :.x保存退出
wq!…强制保存退出 :q! 强制不保存退出
wq...../home/linux/xxx.c 指定位置保存文件
自动框架:.vimrc 文件
相关文章:
Linux之编辑器vim命令
vi/vim命令: 终端下编辑文件的首选工具,号称编辑器之神 基本上分为三种模式,分别是 命令模式(command mode)>输入vi的命令和快捷键,默认打开文件的时候的模式插入模式(insert mode&#x…...
备赛蓝桥杯之第十六届模拟赛2期职业院校组第四题:地址识别
提示:本篇文章仅仅是作者自己目前在备赛蓝桥杯中,自己学习与刷题的学习笔记,写的不好,欢迎大家批评与建议 由于个别题目代码量与题目量偏大,请大家自己去蓝桥杯官网【连接高校和企业 - 蓝桥云课】去寻找原题࿰…...
多模态自动驾驶混合渲染HRMAD:将NeRF和3DGS进行感知验证和端到端AD测试
基于3DGS和NeRF的三维重建技术在过去的一年中取得了快速的进步,动态模型也变得越来越普遍,然而这些模型仅限于处理原始轨迹域内的对象。 HRMAD作为一种混合方案,将传统的基于网格的动态三维神经重建和物理渲染优势结合,支持在任意…...
mac m3 pro 部署 stable diffusion webui
什么是Stable Diffusion WebUI ? Stable Diffusion WebUI 是一个基于Stable Diffusion模型开发的图形用户界面(GUI)工具。通过这个工具,我们可以很方便的基于提示词,描述一段文本来指导模型生成相应的图像。相比较通过…...
多层感知机实现
激活函数 非线性 ReLU函数 修正线性单元 rectified linear unit relu(x)max(0,x) relu的导数: sigmoid函数 s i g m o i d ( x ) 1 1 e − x sigmoid(x)\frac{1}{1e^{-x}} sigmoid(x)1e−x1 是一个早期的激活函数 缺点是: 幂运算相对耗时&…...
ngx_http_index_set_index
定义在 src\http\modules\ngx_http_index_module.c static char * ngx_http_index_set_index(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) {ngx_http_index_loc_conf_t *ilcf conf;ngx_str_t *value;ngx_uint_t i, n;ngx_http_inde…...
怎样实现CAN数据的接收和发送?
在裸机环境下实现CAN数据的接收和发送,需要通过 硬件寄存器操作 或 HAL库函数 结合 手动实现的队列 来完成。以下是完整的接收和发送流程实现: 1. 硬件初始化 首先初始化CAN控制器和GPIO: void CAN_Init(void) {// 1. 使能CAN时钟__HAL_RCC…...
Linux笔记---动静态库(使用篇)
目录 1. 库的概念 2. 静态库(Static Libraries) 2.1 静态库的制作 2.2 静态库的使用 2.2.1 显式指定库文件及头文件路径 2.2.2 将库文件安装到系统目录 2.2.3 将头文件安装到系统目录 3. 动态库 3.1 动态库的制作 3.2 动态库的使用 3.2.1 显式…...
关于matlab和python谁快的问题
关于matlab和python谁快的问题,python比matlab在乘法上快10倍,指数计算快4倍,加减运算持平,略慢于matlab。或许matlab只适合求解特征值。 import torch import timen 50000 # 矩阵规模 M torch.rand(n, 31)start_time time.t…...
基于 ffmpeg 实现合并视频
ffmpeg是一个强大的多媒体处理工具,支持视频文件的合并。 列出目录下所有MP4文件 import os import glob# 当前目录 directory os.getcwd() directory "/directory/to/mp4/*"# 列出目录下所有MP4文件 files glob.glob(directory)# 排序 files.sort(…...
手机销售终端MPR+LTC项目项目总体方案P183(183页PPT)(文末有下载方式)
资料解读:手机销售终端 MPRLTC 项目项目总体方案 详细资料请看本解读文章的最后内容。在当今竞争激烈的市场环境下,企业的销售模式和流程对于其发展起着至关重要的作用。华为终端正处于销售模式转型的关键时期,波士顿 - 华为销售终端 MPRLTC …...
【Python LeetCode Patterns】刷力扣,15 个学习模式总结
1. 前缀和(Prefix Sum)—— 查询子数组中元素和303. 区域和检索 - 数组不可变304. 二维区域和检索 - 矩阵不可变 2. 双指针(Two Pointers)—— 移向彼此或远离彼此3. 滑动窗口(Sliding Window)—— 找到满足…...
蓝桥杯单片机刷题——串口发送显示
设计要求 通过串口接收字符控制数码管的显示,PC端发送字符A,数码管显示A,发送其它非法字符时,数码管显示E。 数码管显示格式如下: 备注: 单片机IRC振荡器频率设置为12MHz。 串口通信波特率:…...
DeepSeek V3-0324升级:开启人机共创新纪元
一、技术平权:开源协议重构AI权力格局 DeepSeek V3选择MIT协议开源6850亿参数模型,本质上是一场针对技术垄断的“数字起义”。这一决策的深层影响在于: 商业逻辑的重构 闭源AI公司依赖API收费的商业模式面临根本性挑战。当顶级模型能力可通过…...
探索抓包利器ProxyPin,实现手机APP请求抓包,支持https请求
以下是ProxyPin的简单介绍: - ProxyPin是一个开源免费HTTP(S)流量捕获神器,支持 Windows、Mac、Android、IOS、Linux 全平台系统- 可以使用它来拦截、检查并重写HTTP(S)流量,支持捕获各种应用的网络请求。ProxyPin基于Flutter开发࿰…...
K8S接口请求过程
K8S接口请求过程 1. 宿主机IP (Host IP)2. Service IP3. NodePort4. Pod端口 (Pod Port)5. 容器端口 (Container Port)6. 应用端口 (Application Port)例子:外部流量如何进入应用配置流量路径表详细说明补充说明--连通性测试: 在Kubernetes(k…...
文献学习:单细胞+临床+模型构建 | 一篇Molecular Cancer文献如何完整解读CDK4/6i耐药机制
👋 欢迎关注我的生信学习专栏~ 如果觉得文章有帮助,别忘了点赞、关注、评论! 📌一、研究背景:CDK4/6i 是不是“万无一失”? HR/HER2- 是最常见的乳腺癌亚型,占比超过70%。近年来,随…...
3.26前端模拟面试
包含 Vue 3、TypeScript、性能优化、工程化等方面,偏八股文。 基础知识 Vue 3 响应式原理:Vue 3 如何实现响应式系统?Proxy 和 Reflect 的作用是什么? TypeScript 类型体操:实现一个 TypeScript 类型 DeepPartial&am…...
Python SciPy面试题及参考答案
目录 什么是 SciPy?它与 NumPy 有什么区别? 如何在 Python 中安装 SciPy? 如何导入 SciPy 库? SciPy 中有哪些子模块?简要介绍它们的功能。 如何使用 SciPy 进行数值积分?请举例说明。 SciPy 中提供了哪些求解微分方程的函数? 什么是插值?SciPy 中如何进行插值?…...
数据库——MySQL基础
一、建立数据库 新建 create 删除 drop 修改 alter 数据库 database 数据表 table 建数据表 create table stu( 字段名 类型 [ 约束 ] [ 主键 ] [注释] ); 二、数据类型 数字 整数 tinyint (小型数据)一般用来做状态…...
Jetpack LiveData 使用与原理解析
一、引言 在 Android 开发中,数据的变化需要及时反映到界面上是一个常见的需求。然而,传统的方式可能会导致代码复杂、难以维护,并且容易出现内存泄漏等问题。Jetpack 组件中的 LiveData 为我们提供了一种优雅的解决方案,它是一种…...
HarmonyOS Next~鸿蒙系统开发类Kit深度解析与应用实践
HarmonyOS Next~鸿蒙系统开发类Kit深度解析与应用实践 鸿蒙系统(HarmonyOS)凭借其分布式架构和全场景能力,为开发者提供了丰富的开发类Kit。本文将从安全、网络、基础功能、硬件及调测五大类Kit展开,深入探讨其核心技…...
网盘解析工具更新,解决了一些bug
解析工具v1.2.1版本更新,本次是小版本更新,修复了一些bug。 之前小伙伴反应的网盘进入文件后不能返回上一级,现在这个bug修复了,已经可以点击了。 点击资源后会回到资源那一级目录,操作上是方便了不少。 增加了检查自…...
SQL语句及其应用(上) (DDL语句以及DML语句)
SQL语句的定义: 概述: 全称叫 Structured Query Language, 结构化查询语言, 主要是实现 用户(程序员) 和 数据库软件(例如: MySQL, Oracle)之间交互用的. 分类: DDL: 数据定义语言, 主要是操作 数据库, 数据表, 字段, 进行: 增删改查(CURD) 涉及到的关键字: create, drop, …...
混境之地1
问题描述 小蓝有一天误入了一个混境之地。 好消息是:他误打误撞拿到了一张地图,并从中获取到以下信息: 混境之地的大小为 n⋅mn⋅m,其中 # 表示这个位置很危险,无法通行,. 表示道路,可以通行。他…...
5种生成模型(VAE、GAN、AR、Flow 和 Diffusion)的对比梳理 + 易懂讲解 + 代码实现
目录 1 变分自编码器(VAE) 1.1 概念 1.2 训练损失 1.3 VAE 的实现 2 生成对抗网络(GAN) 2.1 概念 2.2 训练损失 a. 判别器的损失函数 b. 生成器的损失函数 c. 对抗训练的动态过程 2.3 GAN 的实现 3 自回归模型&am…...
doris:查询熔断
查询熔断是一种保护机制,用于防止长时间运行或消耗过多资源的查询对系统产生负面影响。当查询超过预设的资源或时间限制时,熔断机制会自动终止该查询,以避免对系统性能、资源使用以及其他查询造成不利影响。这种机制确保了集群在多用户环境下…...
多级缓存和数据一致性问题
一、什么是多级缓存? 多级缓存是一种分层的数据缓存策略,通过在不同层级(如本地、分布式、数据库)存储数据副本,结合各层缓存的访问速度和容量特性,优化系统的性能和资源利用率。其核心思想是让数据尽可能…...
计算机期刊推荐 | 计算机-人工智能、信息系统、理论和算法、软件工程、网络系统、图形学和多媒体, 工程技术-制造, 数学-数学跨学科应用
Computers, Materials & Continua 学科领域: 计算机-人工智能、信息系统、理论和算法、软件工程、网络系统、图形学和多媒体, 工程技术-制造, 数学-数学跨学科应用 期刊类型: SCI/SSCI/AHCI 收录数据库: SCI(SCIE),EI,Scopus,知网(CNK…...
全书测试:《C++性能优化指南》
以下20道多选题和10道设计题, 用于本书的测试。 以下哪些是C性能优化的核心策略?(多选) A) 优先优化所有代码段 B) 使用更高效的算法 C) 减少内存分配次数 D) 将所有循环展开 关于字符串优化,正确的措施包括ÿ…...
