vim查找和替换详解
1、vim 单文件中查找方法正常模式下使用 / 或 ? 命令执行向后搜索或向前搜索/love 从光标位置向前搜索关键词 love
?love 从光标位置向后搜索关键词 love正常模式下使用 n 或 N 命令执行 向前查找 或 向后查找 下一个关键词:set ic 忽略大小写命令,ic 为 ignore case 缩写
:set is 边输入边显示匹配结果,is 是 incsearch 命令的缩写
:set hls 高亮显示匹配结果,hls 为 highlight search 缩写可将上述设置放入.vimrc 文件中,设为默认搜索设置:set noic nois nohls 将取消上述设置:noh 暂时取消高亮显示,不会影响下次高亮显示匹配结果 2、vim 多文件查找方法正常模式下使用 :vim 或 :vimgrep 命令执行多文件搜索搜索的时候涉及到选取文件问题,这里主要用到 * 作为通配符
** 表示文件夹及子文件夹下的所有文件搜索 love 关键词
:vim/love/* 当前文件夹下的所有文件
:vim/love/** 当前文件夹及子目录下的所有文件
:vim/love/**/*.php 当前文件夹及子目录下的所有 php 文件
:vim/love/*.php aa/**/*.php 当前文件夹下的 php 文件和 aa 目录及子目录下的 php 文件使用 ** 和 * 可任意组合出想要搜索的文件:cw 查看搜索结果
:ccl 关闭搜索结果
:cn 查找下一个
:cp 查找上一个3、vim 单文件替换方法单文件中使用 :s 命令进行替换操作替换操作会涉及几个常用的标记
% 所有行 g 单行内所有匹配项 i 忽略大小写 c 确认是否替换关键词 old 替换为 new
:s/old/new 将光标所在行第一个 old 替换为 new
:s/old/new/g 将光标所在行所有 old 替换为 new
:%s/old/new/gc 全文执行替换,询问是否替换
:3,10s/old/new/gic 将第3行到第10行内容替换,忽略大小写,且每个询问是否替换g i c 可自由组合4、vim 多问件替换多文件替换使用 :args 和 :argdo 命令,这两个命令结合可以对多文件执行相同操作,不仅是替换:args *.php 将当前文件夹下的 php 文件加入参数列表。加入文件操作也可使用 ** 选择文件夹和子文件夹,和上述2 多文件查找用法一样
:argdo %s/old/new/gc | update 执行替换操作,除使用:argdo 和 | update 外,其它替换操作和 3 中单文件替换用法是一样的args 命令为选取文件到列表,argdo 命令为对列表中的文件执行批处理操作:args 查看参数列表
:argd * 清空参数列表
:arga xx 添加 xx 文件到参数列表,和 args 添加一样,可用 ** 选择多文件夹和文件,参见上述 2 方法注意:在执行 argdo 操作的时候,要先保存当前文件,因为批处理操作会跳到其它文件。
替换前要备份原先文件,update 必须加上,系统会自动保存替换后的文件,否则替换会被中断。其它:执行 args 添加文件操作会将遍历的文件同样添加到缓冲区列表。:ls 列出当前缓冲区列表文件
:bd 3 将缓冲区3号文档删除到非缓冲区列表
:ls! 列出非缓冲区列表文件
:bw 3 可将缓冲区或非缓冲区列表文件彻底清除
:argdo bw 可对参数列表中的所有文件执行清除缓冲区操作
vim查找和替换详解相关推荐
- Linux 执行文件查找命令 which 详解
某个文件不知道放在哪里了,通常可以使用下面的一些命令来查找: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查 ...
- Java中的宏变量,宏替换详解。
转载自 Java中的宏变量,宏替换详解. 群友在微信群讨论的一个话题,有点意思,特拿出来分享一下. 输出true false 来看下面这段程序,和群友分享的大致一样. public static vo ...
- Vim位置标记mark详解
转载自Vim教程网Vim位置标记mark详解-Vim入门教程(34) Vim的位置标记可以实现在文档中的快速跳转.可以通过命令 mark 或缩写形式 m 手动设置位置标记,Vim也会自动记录某些自身感 ...
- [倚天屠龙记] vim 查找与替换(简单查找)
[倚天屠龙记] vim 查找与替换(简单查找) {{{ 搜索与替换是文本编辑器的最重要的功能之一,也是其能力的一个缩影. 接下来用几节的篇幅重点叙述vim的查找与替换功 ...
- [倚天屠龙记] vim 查找与替换(正则表达式)
[倚天屠龙记] vim 查找与替换(正则表达式) {{{ 正则表达式是文本处理领域中的一个强大的工具,它可以让文本处理的能力呈指数级的提升,如果一款文本编辑器不支持正则表达式,那么它就算不上是一个现代 ...
- 用计算机函数查找,Excel查找函数Vlookup详解及应用示例-excel技巧-电脑技巧收藏家...
Excel查找函数Vlookup详解及应用示例 招如其名.此招用来在一个茫茫的数据源中,自动让电脑找出你要的某个数据的相关资料并填在指定的地方.也是就是,可以让电脑在一个表格或指定的一个区域中查找某一 ...
- cadence电阻在哪个库_Orcad 不知道元件调哪个库?元件库的查找位置对照表详解...
原标题:Orcad 不知道元件调哪个库?元件库的查找位置对照表详解 一.默认库路径 C:\Cadence\SPB_16.6\tools\capture\library里,我这盘符C你们根据实际安装盘符 ...
- Java数据结构与算法-SingleLinkedList单向链表插入,删除,查找,修改详解及代码
SingleLinkedList单向链表插入,删除,查找,修改详解及代码 单向链表学习目标 1. 链表的介绍 2. 单向链表的存储特点以及原理 3. 基本操作:插入,删除等 4. 单向链表应用场景举例 ...
- Vim 命令常用功能详解
Vim编辑器 文本编辑器 , 字处理器 ASCII vi:Visual Interface vim :VI iMproved 全屏编辑器,模式化编辑器 vim 模式: 编辑模式(命令模式) 输入模式 ...
最新文章
- GridView自定义分页
- NeHe OpenGL教程 第二十一课:线的游戏
- python中的set和dict_Python中dict和set的用法讲解
- Hey, Apple | Decode the Week
- 【C++基础】模板参数与模板继承
- C++中的4种类型转换方式
- Java并发编程实战笔记—— 并发编程1
- python oracle query,python链接oracle/plsql数据库 ,查询功能(query) 用cursor fetchall
- [转载] python判断字符串中包含某个字符串_干货分享| Python中最常用的字符串方法
- 从实例入手,讲解 CMake 的常见用法。demo1-demo8
- OpenCV cv.INTER_AREA和cv.INTER_CUBIC 还有cv.INTER_LINEAR
- SwitchHosts-一款实用的host地址切换工具
- C语言程序设计题(带答案)
- 关于机器人方面的sci论文_机器人期刊_SCI
- Java-Controller引起的Ambiguous mapping问题解决
- RK3566-安卓一体机-用户案例
- c语言求某年某月1日是星期几,蔡勒(Zeller)公式:根据日期推算是星期几
- Bob 的生存概率问题
- Win11账号被锁定无法登录怎么办?Win11账号被锁定无法登录
- 华为机试---年终奖(动态规划)