Linux常用操作之vim快捷操作


文章目录


前言

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


一、vim三种工作模式

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

yaml 复制代码
 命令行模式
 末行模式
 编辑模式

二、命令行模式操作

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

三、编辑模式操作

命令 说明
i、I i是从光标所在位置开始输入,I是光标所在行第一个非空白字符开始输入
a、A a是从光标所在的下一个字符开始输入,A是从光标所在行的最后一个字符开始输入
o、O o是从光标所在行的下一行新的一行开始输入,O是从光标所在行的上一行新的一行开始输入
r、R r是取代光标所在的字符一次,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快速注释多行操作

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

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

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

相关推荐
上海云盾-小余7 小时前
流量攻击复盘:为什么 WAF 完好,业务依旧瘫痪
运维·服务器·网络
IT大白鼠7 小时前
Docker 私有仓库管理:Harbor 企业级仓库搭建与镜像全生命周期管理
运维·docker·容器
戴西软件7 小时前
戴西iDWS.3DViz Suite数据轻量化可视化软件,从传统桌面软件向云端协同的重大突破
大数据·运维·网络·人工智能·机器学习·3d
闲云野鹤在人间8 小时前
OpenStack架构介绍和安装流程
linux·网络·架构·openstack
我命由我123459 小时前
Linux - Linux/POSIX 路径斜杠折叠规则
linux·运维·服务器·android studio·android jetpack·android-studio·android runtime
姚不倒9 小时前
Nginx 反向代理:5 种负载均衡策略与实战
运维·nginx·负载均衡
xx~t9 小时前
嵌入式——Linux软件编程——网络1
linux·c语言·网络·vscode·网络协议
Uncertainty!!9 小时前
Linux 主机无法完成校园网认证排查记录:从 DHCP、ARP 到 Portal 认证流程分析
linux·运维·服务器
神威难绷泪10 小时前
Linux消息队列 & 共享内存 笔记
linux·消息队列·共享内存
其实防守也摸鱼10 小时前
权限提升与横向移动:从内网渗透到域控的完整技术图谱
运维·服务器·数据库·安全·github·copilot·渗透