news 2026/7/16 0:54:59

Vim命令技巧

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Vim命令技巧

Vim命令技巧

Vim作为一款强大的文本编辑器,是linux运维必会的技能。然而,对于初学者来说,可能只会一些简单的编辑命令。

1. 删除技巧

1.1 删除单个字符

  • x:删除光标所在位置的字符。

  • X:删除光标前一个字符。
    删除引号内字符
    di"

  • 将光标放在双引号内的任意位置

  • 按下d(删除) +i"(inside double quotes)

  • 会删除两个双引号之间的所有内容,但保留引号

1.2 删除单词

  • dw:删除从光标位置到下一个单词开头的内容。
  • daw:删除光标所在的整个单词(包括周围空格)。
  • diw:删除光标所在的单词(不包括周围空格)。

1.3 删除行

  • dd:删除整行。
  • D:删除从光标位置到行尾的内容。

1.4 删除多行

  • ndd:删除从当前行开始的n行。例如,3dd删除3行。

2. 替换技巧

2.1 替换单个字符

  • r:替换光标所在位置的字符。例如,ra将当前字符替换为a

2.2 替换多个字符

  • R:进入替换模式,从光标位置开始替换字符,按Esc退出。

2.3 全局替换

  • :%s/old/new/g:将文件中所有的old替换为new

  • :%s/old/new/gc:替换时进行确认。

3. 跳转技巧

3.1 行内跳转

  • 0:跳转到行首。
  • ^:跳转到行首第一个非空白字符。
  • $:跳转到行尾。

3.2 文件内跳转

  • gg:跳转到文件开头。
  • G:跳转到文件末尾。
  • nG:跳转到第n行。例如,10G跳转到第10行。

3.3 标记跳转

  • m{a-z}:在当前光标位置设置标记。例如,ma设置标记a
  • {a-z}:跳转到标记位置。例如,a跳转到标记a

4. 移动技巧

4.1 光标移动

  • h:左移。
  • j:下移。
  • k:上移。
  • l:右移。

4.2 单词移动

  • w:移动到下一个单词的开头。
  • b:移动到上一个单词的开头。
  • e:移动到下一个单词的结尾。

4.3 屏幕移动

  • Ctrl + f:向下翻页。
  • Ctrl + b:向上翻页。
  • Ctrl + d:向下翻半页。
  • Ctrl + u:向上翻半页。

5. 高级实用操作技巧

5.1 批量注释

  • Ctrl + v:进入可视块模式,选择多行后按I输入#,再按Esc,即可批量注释。
  • :n1,n2s/^/#/g:将n1到n2行的行首添加#

5.2 批量缩进

  • >>:当前行向右缩进。
  • <<:当前行向左缩进。
  • n>>:从当前行开始的n行向右缩进。

5.3 批量替换

  • :n1,n2s/old/new/g:将n1到n2行之间的old替换为new

5.4 清空所有内容

  • "%d:vi打开文档后,需要清空文档再复制,可以通过此命令快速清空

  • 5.4 保留粘贴格式

场景:从vscode或者其它地方复制代码到vi编辑器经常会出现格式错乱的问题,例如额外的缩进,层级文本错乱或者自动换行问题

1、在普通模式下启用paste模式:set paste2、进入插入模式并粘贴文本i (或按Insert键) ,然后粘贴文本

  • 5.5 转换字符集格式

  • windows上编辑的shell脚本上传到linux系统,由于字符集问题,脚本执行时经常会出现^M: bad interpreter错误

vim中,可以通过如下方法解决(cat -A filename# 显示所有字符)

# 1. 使用 Vim 打开文件vim /tmp/test.sh# 2. 查看当前文件格式:set ff?# 输出:fileformat=dos# 3. 转换为 Unix 格式:set ff=unix 或者:set fileformat=unix# 4. 查看文件内容确认:set list# 可以看到行尾现在只有 $(LF),没有 ^M(CR)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/16 0:52:37

全域三极公理统一篇——所有分析、代数、拓扑、算子理论同源归一,回归0/1/∞创世本源闭环《全域数学vs传统数学:人类文明进阶200讲》第91讲

作者&#xff1a; 乖乖数学 《全域数学vs传统数学&#xff1a;人类文明进阶200讲》第91讲讲次&#xff1a; 第91讲 主题&#xff1a; 全域三极公理统一篇——所有分析、代数、拓扑、算子理论同源归一&#xff0c;回归0/1/∞创世本源闭环 对标课本知识点&#xff1a; 全域0-1-∞…

作者头像 李华
网站建设 2026/7/16 0:38:28

C#上位机+ONNX Runtime:毫秒级AI视觉缺陷检测系统落地指南

前言&#xff1a;当"算法Demo"撞上"产线节拍" 在工业视觉圈子里&#xff0c;有一个心照不宣的共识&#xff1a;算法工程师交付的Python Demo和现场实际运行的C#上位机之间&#xff0c;隔着一道巨大的工程鸿沟。 我见过太多这样的项目&#xff1a;算法团队…

作者头像 李华
网站建设 2026/7/16 0:37:46

影刀RPA 数据合并:多表关联与拼接

影刀RPA 数据合并&#xff1a;多表关联与拼接 作者&#xff1a;林焱 什么情况用什么 数据分散在多个文件里——销售数据在A表、客户信息在B表、产品信息在C表&#xff0c;需要合并成一张完整报表。或者按月分开的12个文件需要拼成一整年的数据。在影刀RPA里用pandas的merge、c…

作者头像 李华
网站建设 2026/7/16 0:27:22

紧急!新修订《行政规范性文件管理办法》生效前72小时,ChatGPT政策比对工具包限时开放(含12类高频冲突条款识别规则集)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;政策文本解析的AI范式迁移 传统政策文本分析长期依赖人工标注、规则引擎与浅层统计模型&#xff0c;面对海量、多源、动态更新的法规文件&#xff08;如国务院条例、部委规章、地方性法规&#xff09;&…

作者头像 李华
网站建设 2026/7/16 0:09:37

HarmonyOs应用《重要日》开发第6篇 - 数据持久化存储

本篇深入剖析 ImportantDays 项目的数据持久化方案——基于 HarmonyOS ArkData 模块的 Preferences 轻量级存储&#xff0c;以及 PreferenceUtil 工具类的单例封装。一、HarmonyOS 数据存储方案对比 HarmonyOS 提供了多种数据存储方案&#xff1a;方案适用场景特点Preferences轻…

作者头像 李华