如何使用 sed 重新格式化 MAC 地址?

How do I reformat MAC addresses using sed?

我有一个 MAC 地址,它采用标准的 : 分隔格式,例如 08:f1:ea:6d:03:3c,我想将其打印为三组四位十六进制数字用.隔开,比如08f1.ea6d.033c

我尝试了 echo 08:f1:ea:6d:03:3c | sed 's/://g',但结果是:08f1ea6d033c。

如有任何帮助,我们将不胜感激。

拿走你所拥有的,然后将 's/.\{4\}/&./g;s/.$//' 添加到 sed 表达式中。总而言之,那就是:

echo 08:f1:ea:6d:03:3c | sed 's/://g;s/.\{4\}/&./g;s/.$//'

如您所见,您的 sed 表达式删除了所有 :;s/.\{4\}/&./g 在每四位数字后添加一个 .;s/.$//' 删除前一个表达式添加的尾随 .