bash - 将文件中的所有IP地址替换为指定的字符串

标签 bash sed

我在文件中有一个巨大的 IP 地址 列表,我想将所有 IP 地址替换为指定的字符串 (示例:X.X.X.X)

#Example.txt
1,1.1.1.1
2,10.10.10.10
3,5.5.5.5
4,6.6.6.6
.........

我尝试使用 sed

替换
$sed -e 's/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/x.x.x.x/g' example.txt

我无法做到这一点。有人可以帮助我如何用特定字符串替换 IP 地址吗?

最佳答案

你快到了!您所要做的就是转义重复大括号:

sed -e 's/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/x.x.x.x/g' test.txt

关于bash - 将文件中的所有IP地址替换为指定的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35276822/

相关文章:

linux - 使用 sed 在特定行插入状态

linux - 在具有完整路径的 Linux 中使用 ls 命令列出文件

json - bash输出为json格式

bash - 使用未知分隔符的 Unix 排序(最后一列)

linux - 通过 ssh 运行命令时向远程机器提问

regex - 如何在 BASH 中查找和替换文件每一行的最后一个空格?

linux - 将供应商 MAC 地址的 "-"替换为 ":"

regex - 删除linux中第二个重复指定字符前的数据

regex - 如何在sed中做if-then语句

bash - sed/awk : Extract pattern from text stream