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

Linux常用操作之vim快捷操作


文章目录

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


前言

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


一、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快速注释多行操作

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

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

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


http://www.kler.cn/a/417479.html

相关文章:

  • 个人笔记---关于详解threadlocal 上下文环境存储的最佳数据类型
  • 代码随想录算法训练营| 二叉树总结
  • Eureka 高频考点
  • 6 加密技术与认证技术
  • 【C语言】常量指针和指针常量,指针数组和数组指针,指针函数和函数指针怎么区分?
  • JDK9新特性
  • 【QNX+Android虚拟化方案】129 - USB眼图参数配置
  • Unity ShaderLab 实现3D物体描边
  • Mybatis:CRUD数据操作之单条件查询
  • YOLO模型训练后的best.pt和last.pt区别
  • HTML技术深度解析:构建现代网页的基石
  • redis-bitmap使用详解
  • kubernetes——part3-2 集群声明式文件YAML
  • STL简介
  • 短视频账号矩阵系统源码--独立saas技术部署
  • 计算机视觉工程师紧张学习中!
  • keil 5. Flash Timeout. Reset the Target and try it again.
  • css—动画
  • Unix网络编程笔记(一、简介和TCP/IP)
  • ProtonBase 教育行业解决方案
  • ARM架构下安装新版docker及docker-compose
  • 渗透测试kali虚拟机分享(附网盘链接)
  • 创建maven私人创库nexus
  • 如何全面备份你的Mac电脑:邮件、联系人、桌面文件和Safari书签
  • 【论文阅读】Multi-level Semantic Feature Augmentation for One-shot Learning
  • keepalived+lVS(dr)高可用集群