如何在 json 数组中格式化 mac 地址

How format mac address inside json array

需要帮助获取 json 文件中的 mac 地址以使用 sed 重新格式化 猫 251.json

 cat /tmp/251.json


   [
  "08:f1:ea:6d:03:3c",
  "08:f1:ea:6d:03:3d",
  "08:f1:ea:6d:03:3e",
  "08:f1:ea:6d:03:3f",
  "b8:83:03:81:4b:20",
  "b8:83:03:81:4b:21",
  "b8:83:03:84:d5:1c",
  "b8:83:03:84:d5:1d"
]

预期格式为

 [
  "08f1.ea6d.033c",
  "08f1.ea6d.033d",
  "08f1.ea6d.033e",
  "08f1.ea6d.033f",
  "b883.0381.4b20",
  "b883.0381.4b21",
  "b883.0384.d51c",
  "b883.0384.d51d"
]

这应该有效:

sed -E 's/:(.{2}):(.{2}):(.{2}):(.{2}):/../g' /tmp/251.json

通过这种方式,您可以将输出输出到标准输出。如果要修改文件,请添加 -i 选项。您可以查看结果 here.