Bash:DNS查找,将NS放入数组中

时间:2013-03-07 08:46:59

标签: arrays bash dns awk lookup

我需要为几个域查找NS,我需要将结果放在一个数组中。 现在我只能设法获得第一个回显的结果,但我需要所有结果,最好是在数组中。

有谁知道怎么做?

例如,dig google.com ns给了我4个结果ns[1-4].google.com 我刚做完了:

dig google.com ns | awk '/^;; ANSWER SECTION:$/ { getline ; print $5 '} 

但是只打印第一行。我不知道如何将所有结果放在一个数组中。

1 个答案:

答案 0 :(得分:0)

你真的需要数组中的答案,还是只想输出ANSWER SECTION

$ dig google.com ns | awk 'p{print $5}/^;; ANSWER SECTION:$/{p=1}/^$/{p=0}'
ns3.google.com.
ns1.google.com.
ns4.google.com.
ns2.google.com.

相同的结果,但通过解析ADDITIONAL SECTION而不是ANSWER SECTION,awk更简洁:

$ dig google.com ns | awk '/^ns/{print $1}'
ns1.google.com.
ns4.google.com.
ns2.google.com.
ns3.google.com.

您想对结果做什么?