我有以下o / p,
2001:8888:5678:ddd2::32 via 2001:8888:5678:dde0::1 dev vlan3943
我希望它转换如下,
2001:8888:5678:ddd2::32/128 via 2001:8888:5678:dde0::1 dev vlan3943
即。添加" / 128"在" 2001:8888:5678之后:ddd2 :: 32"
答案 0 :(得分:0)
使用sed
命令进行简单替换:
line="2001:8888:5678:ddd2::32 via 2001:8888:5678:dde0::1 dev vlan3943"
echo $line | sed -r 's/^(([0-9a-f]{1,4}:){3}[0-9a-f]{1,4}::[0-9]+)/\1\/128/'
-r
选项,允许扩展常规表达
^(([0-9a-f]{1,4}:){3}[0-9a-f]{1,4}::[0-9]+)
- 将匹配输入字符串开头的IPv6地址