首页 > 解决方案 > 批量更新文本

问题描述

我有一些记录,像这样:

192.168.0.1 example1.domain.com
192.168.0.2 example2.domain.com
192.168.0.3 example3.domain.com

这当然是虚拟数据,并且会有所不同,但格式将保持不变。

我正在寻找一种方法将它们(批量)转换为如下所示:

1.0.168.192.in-addr.arpa 3600 IN PTR example1.domain.com
2.0.168.192.in-addr.arpa 3600 IN PTR example2.domain.com
3.0.168.192.in-addr.arpa 3600 IN PTR example3.domain.com

任何解决方案都可以,无论是使用 Notepad++ 正则表达式、sed、awk 等。

标签: regexawksednotepad++

解决方案


使用awk.

awk '{split($1,a,"."); 
     print(a[4]"."a[3]"."a[2]"."a[1]".in-addr.arpa 3600 IN PTR",$2)}' file

输出:

1.0.168.192.in-addr.arpa 3600 IN PTR example1.domain.com
2.0.168.192.in-addr.arpa 3600 IN PTR example2.domain.com
3.0.168.192.in-addr.arpa 3600 IN PTR example3.domain.com

推荐阅读