Linux常用操作之vim快捷操作

news/2024/12/2 17:07:51/

文章目录

  • 前言
  • 一、vim三种工作模式
  • 二、命令行模式操作
  • 三、编辑模式操作
  • 四、末行模式操作
  • 五、vim快速注释多行操作
  • 六、vim快速取消多行注释操作


前言

在使用Linux操作系统时,经常会使用vi/vim编辑文件,会涉及到文件内容的删除、注释、增加等,如果改动的地方较多,那么怎么使用快速的方式实现修改就是本篇文章的核心思想


vim_12">一、vim三种工作模式

默认就是命令行模式。按i、a或o进入编辑模式,再按ESC返回到命令行模式。在命令行模式输入冒号切换到末行模式,再按ESC又返回到命令行模式。编辑模式和末行模式之间不能直接切换,只能通过命令行模式切换
在这里插入图片描述

 命令行模式末行模式编辑模式

二、命令行模式操作

命令说明
yy复制光标所在行,如果想要复制10行,那就 " 10yy "
dd删除光标所在行,如果想要删除10行,那就“10dd”
p粘贴至光标所在行的下一行
P粘贴至光标所在行的上一行
G光标定位到最后一行
gg光标定位到行首
dG删除光标行之后的全部数据
d1G删除光标行前面的所有数据
u撤销刚才的操作
ctrl+r反撤销
0、^快速定义光标至行首
$快速定义光标至行尾
v、V、Ctrl+vv是光标起始和结束之间的文本会被选中,V是光标起始和结束之间的所有行被选中,Ctrl+v是光标起始和结束之间构成的矩形区域被选中
.(小数点)重复上一个动作
n从上向下跳光标,用于查找关键字
N从下向上跳光标,也是用于查找关键字

三、编辑模式操作

命令说明
i、Ii是从光标所在位置开始输入,I是光标所在行第一个非空白字符开始输入
a、Aa是从光标所在的下一个字符开始输入,A是从光标所在行的最后一个字符开始输入
o、Oo是从光标所在行的下一行新的一行开始输入,O是从光标所在行的上一行新的一行开始输入
r、Rr是取代光标所在的字符一次,R是依次取代光标所在字符

四、末行模式操作

命令说明
:w保存
:q退出
:wq、ZZ保存并且退出
:wq!强制保存并退出
:q!、ZQ强制退出
:set nu显示行号
:set nonu关闭行号显示
:set list查看是否有空格或空行
:set nolist取消显示的空格或空行符
:set paste粘贴时不乱行
:/read filepath快速读取某个目录下的文件至当前文本中
:/搜索的内容搜索关键字
:/s/old/new/替换光标所在行的某个字符
:%s/要替换的字符/替换后的字符/g全局替换
:%s#xx1#xxx2#g全局替换
:32-37d删除32-37行

vim_71">五、vim快速注释多行操作

  1. 首先按esc进入命令行模式下,按下Ctrl + v,进入命令行模式;2. 在行首使用上下键选择需要注释的多行;3. 按下键盘(大写)“I”键,进入插入模式;4. 然后输入注释符(“//”、“#”等);5. 最后按下“Esc”键。 注:在按下esc键后,会稍等一会才会出现注释=

vim_80">六、vim快速取消多行注释操作

  1. 首先按esc进入命令行模式下,按下Ctrl + v, 进入命令行模式;2. 选定要取消注释的多行;3. 按下“x”或者“d”. 注意:如果是“//”注释,那需要执行两次该操作,如果是“#”注释,一次即可


http://www.ppmy.cn/news/1551804.html

相关文章

工厂方法模式与抽象工厂模式

首先是一个工厂方法模式&#xff1a; #include <iostream> #include <string> using namespace std;// 抽象产品类 class Car { public:virtual void Run() 0; // 纯虚函数&#xff0c;定义产品接口virtual ~Car() {} // 虚析构函数&#xff0c;保证多态删除 };/…

java——Spring中的Bean线程安全问题

Spring中的Bean对象是否线程安全取决于多个因素&#xff0c;包括Bean的作用域&#xff08;scope&#xff09;、Bean的实现方式以及如何使用这些Bean。以下是一些关键点来帮助理解Spring中Bean的线程安全性&#xff1a; 1. Bean的作用域 Singleton (默认作用域)&#xff1a;在…

Ardupilot开源无人机之Geek SDK讨论

Ardupilot开源无人机之Geek SDK讨论 1. 源由2. 假设3. 思考3.1 结构构型3.2 有限资源3.3 软硬件构架 4.Ardupilot构架 - 2024kaga Update5. 讨论5.1 话题1&#xff1a;工作模式5.2 话题2&#xff1a;关键要点5.3 话题3&#xff1a;产品设计 6. Geek SDK - OpenFire6.1 开源技术…

云原生周刊:K8s 严重漏洞

云原生周刊&#xff1a;K8s 严重漏洞 开源项目推荐 KitOps KitOps 是一款开源的 DevOps 工具&#xff0c;专为 AI/ML 项目的全生命周期管理而设计&#xff0c;通过将模型、数据集、代码和配置打包并版本化为符合 OCI&#xff08;开放容器标准&#xff09;的工件&#xff0c;…

在WSL 2 (Ubuntu 22.04)安装Docker Ce 启动错误解决

查看WSL版本 在 Windows 命令提示符&#xff08;CMD&#xff09;或 PowerShell 中&#xff0c;你可以使用以下命令来查看已安装的 WSL 发行版及其版本信息&#xff1a; wsl -l -v(base) PS C:\Users\Lenovo> wsl -l -vNAME STATE VERSION * Ubuntu-2…

利用Nginx在服务器上部署你的第一个静态页面

文章目录 序言Nginx常用功能1. 反向代理2.负载均衡轮询加权轮询IP_Hash Nginx配置文件结构安装并部署你的静态网页1. 安装(懒人直接看3)2.查看配置文件3.编写或放入自己的静态页面文件 序言 首先我们先来认识一下什么是Nginx源码 官网 Nginx (engine x) 是一个高性能的HTTP和…

【笔记】置身事内

文章目录 制度与政府行为财税改革土地财政城投公司与土地金融 宏观现象及影响纵向不平衡与横向不平衡债务问题地方政府债务房价与居民债务 低消费与产能过剩 我国地方政府这些年在推动经济发展的过程中&#xff1a; 重土地、轻人&#xff0c;优点是可以快速推进城市化和基础设施…

Rockchip-linux驱动 --- IIC

文章目录 一、IIC子系统编程&#xff08;一&#xff09;分配并初始化对象&#xff08;二&#xff09;IIC驱动框架&#xff08;三&#xff09;IIC的regmap函数1. 初始化IIC的寄存器映射2. 写入寄存器3.读取寄存器 &#xff08;二&#xff09;打印调试信息 一、IIC子系统编程 &a…