gpt4 book ai didi

linux - 如何在处理 IPv6 的 ubuntu 批处理脚本中处理正则表达式

转载 作者:太空宇宙 更新时间:2023-11-04 12:43:17 25 4
gpt4 key购买 nike

我用radvd生成了格式为3002:0200:00bc:098a::/64的64位前缀,但是它以3002:200:bc:98a::的形式出现在客户端设备的eth0中/64。现在我有脚本可以提取此地址并保存到文件中,例如“temp”as 3002:200:bc:98a。我现在需要将其更改为 3002:0200:00bc:098a 形式,我们将不胜感激。

最佳答案

$ cat ip.txt 
3002:200:bc:98a
20:1:ad:8b

$ perl -lpe 's/[^:]+/sprintf "%04s", $&/ge' ip.txt
3002:0200:00bc:098a
0020:0001:00ad:008b
  • [^:]+ 要转换的字段
  • ge 其中 g 用于替换所有匹配项,e 允许在替换部分使用 Perl 代码
  • sprintf "%04s", $& 根据需要格式化匹配的字符串

关于linux - 如何在处理 IPv6 的 ubuntu 批处理脚本中处理正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39548470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com