Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux vim全局替换

Linux vim全局替换的实现方法

作者:bluewelkin

这篇文章主要介绍了Linux vim全局替换的实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Linux vim全局替换

Linux命令:vi全局替换方法

语法为 :[addr]s/源字符串/目的字符串/[option]

全局替换命令为::%s/源字符串/目的字符串/g

[addr]: 表示检索范围,省略时表示当前行。

s :表示替换操作

[option] :表示操作类型 

1. 基本的替换

(n 为数字,若 n 为 .,表示从当前行开始到最后一行)

2. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

vim替换和查找

基本查找和替换

在Vim中,可以使用 :substitute(:s) 命令来查找和替换文本。

要在Vim中运行命令,必须处于 normal 模式,这是启动编辑器时的默认模式。 要从其他任何模式返回 normal 模式,只需按 Esc 键。

替换命令的一般形式如下:

:[range]s/{pattern}/{string}/[flags] [count]

该命令在 [range] 中的每一行中搜索 {pattern} ,并将其替换为 {string} 。 是与命令 [count] 相乘的正整数。

如果未给出 [range] [count] ,则仅替换当前行中找到的 pattern 。 当前行是光标所在的行。

range确定范围,不写默认为当前行。

%         # 表示整个文件内容
.         # 表示当前行
$         # 表示最后一行
m,n       # 表示从第m行到第n行
,n        # 表示从当前行到第n行
n,        # 表示从第n行到当前行
n         # 指定行
+n        # 表示当前行之后的n行

flags为替换标志位,默认为指定范围内的行的第一次匹配的位置,帮助文档:h s_flags

常用标志如下:

g: global,表示在指定范围内执行全局操作,替换所有匹配项
c: confirm,可以确认或拒绝修改
n: number,报告匹配到的次数,不替换,可用来查询匹配次数
i: 执行不区分大小写的替换
I: 执行区分大小写的替换
e: 防止替换失败时显示错误消息

单行查找后替换

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文