Ada*_*ich 3 sed text-processing ip-address
我正在尝试使用 sed 就地替换文件中的 IP 地址。我知道 。是通配符,所以我尝试执行以下操作:
sed -i -e 's/.\..\..\..\./127.0.0.1/g' /.../myfile.txt
但是我不确定 IP 地址的每个部分可以是多少位(1-3),我也不确定我的转义是否也有效。有什么建议吗?非常感激
小智 6
[0-9]
匹配任何数字。
[0-9]\{1,3\}
匹配 1 到 3 位数字(请注意,这将接受前导零。
所以,
sed -i -e 's/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/127.0.0.1/g' /.../myfile.txt
Run Code Online (Sandbox Code Playgroud)
应该大致做你想做的。它会匹配一些无效的地址,但可能会完成这项工作。有关更高级的选项,请参阅评论中来自 @steeldriver 的链接