BASH:拆分MAC地址 - > 000E0C7F6676到00:0E:0C:7F:66:76

fwa*_*ter 4 string macos bash split

HY,

有人可以帮助我从日志文件中拆分mac地址吗?:-)

这个:

000E0C7F6676
Run Code Online (Sandbox Code Playgroud)

应该:

00:0E:0C:7F:66:76
Run Code Online (Sandbox Code Playgroud)

Atm我把它与OpenOffice分开,但是有超过200个MAC地址'这非常无聊和缓慢......

如果解决方案是在bash中会很好.:-)

提前致谢.

fal*_*tro 6

一个简单的sed脚本应该这样做.

sed -e 's/[0-9A-F]\{2\}/&:/g' -e 's/:$//' myFile
Run Code Online (Sandbox Code Playgroud)

这将获取一个mac地址列表myFile,每行一个,并在每两个十六进制数后插入一个':',最后删除最后一个.


gho*_*g74 5

$ mac=000E0C7F6676
$ s=${mac:0:2}
$ for((i=1;i<${#mac};i+=2)); do s=$s:${mac:$i:2}; done
$ echo $s
00:00:E0:C7:F6:67:6
Run Code Online (Sandbox Code Playgroud)