gpt4 book ai didi

regex - 使用 sed 搜索和替换文件中的 ip 地址

转载 作者:行者123 更新时间:2023-11-29 08:56:26 24 4
gpt4 key购买 nike

我已经尝试让它工作了一段时间,但并没有真正做到。基本上,我有一个 IP 地址每天或多或少变化的文件。该文件仅包含一个 IP 地址,而这是我试图用我疯狂的 grepping 来查找我当前的内部 IP 来替换的那个。

我有这个

#!/bin/sh

newip=$(ifconfig | grep 0xfff | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' | grep -v 255)

echo $newip
sed 's/*\.*\.*\.*/"$newip"/g' log.txt > logmod.txt

但它不是匹配和替换。我不熟悉 sed,我也是正则表达式的初学者。

任何帮助都会很棒!谢谢:)

最佳答案

如果您的 sed 版本支持扩展的正则表达式(-r 选项),您可以这样做(类似于您在 grep 语句)。另请注意 $newip 位于单引号之外,以允许 shell 替换它。

sed -r 's/(\b[0-9]{1,3}\.){3}[0-9]{1,3}\b'/"$newip"/

顺便说一句,这个解决方案仍然匹配不代表 IP 地址的字符串。参见 this siteIP 地址 下获取更复杂的解决方案。

关于regex - 使用 sed 搜索和替换文件中的 ip 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5277156/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com