编辑:一些说明。我正在做的是,我有一个 python 脚本,它将连接到我的 DNS 服务器,然后运行位于 home 中的 bash 脚本,以 grep 查找 *something.com 中的所有 A,然后 grep 查找我无法列出的其他内容。之后,我运行下面列出的第 1 部分或第 2 部分。结果保存在我电脑上的一个文件中。
它看起来像这样:
grep "A" *something.com | grep <something> | awk/sed <either the first or 2nd example>
第一个脚本会给我
something.something.com:DNSentry IP
第二
something.something.com
DNSentry IP
我需要的是让它看起来像这样。
DNSentry.something.something.com IP
我一直在尝试完成一个可以生成 DNS 报告的脚本。到目前为止,我有两种方法可以做到这一点,结果如下。目前我有一长串的 greps、awk 和 sed。
当使用此帖子中的字符串时,我能够生成它。从命名区域文件生成 CSV/TXT 文件
org1.com:entry1 IP
org1.com:entry2 IP
org2.com:entry1 IP
org2.com:entry2 IP
etc.
我还有一个可以使用以下命令生成该脚本的脚本:
grep <pattern> | awk -F: '{if ($1 != last) {print "";print $1; last = $1} print $2}' | sed "s/A//"
我已经接近我需要的了,但是当我尝试将 org.com 添加到行中时,它会将其直接放在 IP 之后,而不是条目之后。
org1.com
entry1 IP
entry2 IP
org2.com
entry1 IP
entry2 IP
etc.
我需要得到的是这样的
entry1.org1.com IP
entry2.org1.com IP
entry1.org2.com IP
entry2.org2.com IP
答案1
虽然不完美也不万无一失,但也许这可以给你一个开始:
awk '/A/{print $1"."FILENAME"\t"$NF}' *something.com
这意味着,匹配文件中带有“A”的行,并打印文件名、记录的主机名和 IP 地址。