【发布时间】:2019-12-13 17:10:17
【问题描述】:
我正在努力处理 sed 命令。
我想将文件中的 IP 地址更改为 10.2.22.222:8000
文件包含这个。
Uri = 10.1.11.111:8000
我相信下面的代码是好的。
sed -e "s/[0-9]{1-3}.[0-9]{1-3}.[0-9]{1-3}.[0-9]{1-3}:[0-9]{1-4}/10.2.22.222:8000/"
但是,即使我相信我的正则表达式是正确的,它也不能正常工作。
我该怎么办?
【问题讨论】:
-
您的正则表达式不正确,范围量词语法为
{min,max}。sed -E "s/[0-9]{1,3}(\.[0-9]{1,3}){3}:[0-9]{1,4}/10.2.22.222:8000/",见the demo -
我必须使用 "-i" 选项。
-
如果您需要将结果保存在同一个文件中,可以。 sed 版本之间的情况并不完全相同,因此在大多数情况下,我将其留给 OP 来解决。或通过评论。反正就是solved issue。
标签: sed