首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sed -反向DNS提取

sed -反向DNS提取
EN

Stack Overflow用户
提问于 2013-04-17 02:47:46
回答 2查看 172关注 0票数 0

我正在尝试从Microsoft区域中提取DNS PTR记录,以便将它们暂存到BIND区域中。我有所有的反转,它们的格式如下:

代码语言:javascript
复制
1.0.0.10.in-addr.arpa.  1200    IN  PTR my.long.domain.net.
22.0.0.10.in-addr.arpa. 1200    IN  PTR your.long.domain.net.
33.0.0.10.in-addr.arpa. 1200    IN  PTR our.long.domain.net.

我想要做的是提取最初的八位字节(在本例中是每行中的1、22和33 -在开头),但然后我想删除其他所有内容,一直到"PTR“项。然后,我希望保留"PTR“项以及实际的反转(例如。my.long.domain.net。因此,我猜测使用sed和我想要结束的输出(使用上面的示例)将是:

代码语言:javascript
复制
1       PTR     my.long.domain.net.
22      PTR     your.long.domain.net.
33      PTR     our.long.domain.net.

这是sed能做的事情吗?我该怎么做呢?到目前为止,我是sed专家。

在进阶时谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-17 04:10:15

这可能适用于您(GNU sed):

代码语言:javascript
复制
sed -r 's/\..*(\sPTR)/\1/' file
票数 2
EN

Stack Overflow用户

发布于 2013-04-17 03:17:31

我认为这就是你想要的:

代码语言:javascript
复制
 sed 's/\s\{1,\}/ /g;s/\([^.]*\).*PTR /\1       PTR     /;s/^\(........\) */\1/'

其中一些只是为了获得您在所需输出中显示的间距,如果您想要的只是单倍间距的字段,则可以这样做:

代码语言:javascript
复制
sed 's/\s\{1,\}/ /g;s/\([^.]*\).*PTR /\1 PTR /'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16044746

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档