【发布时间】:2020-07-09 09:41:10
【问题描述】:
更新:仍对使用nslookup without parallel、dig 或drill 的解决方案开放
我需要编写一个脚本来扫描每行包含网页地址的文件,并使用nslookup 命令将与名称对应的IP 地址添加到这些行中。脚本现在看起来像这样:
#!/usr/bin/
while read ip
do
nslookup "$ip" |
awk '/Name:/{val=$NF;flag=1;next} /Address:/ &&
flag{print val,$NF;val=""}' |
sed -n 'p;n'
done < is8.input
输入文件包含以下网站:
www.edu.ro
vega.unitbv.ro
www.wikipedia.org
最终输出应如下所示:
www.edu.ro 193.169.21.181
vega.unitbv.ro 193.254.231.35
www.wikipedia.org 91.198.174.192
我对脚本当前状态的主要问题是它从nslookup 中获取名称(这对www.edu.ro 有好处),而不是在可用时使用别名。我的输出如下所示:
www.edu.ro 193.169.21.181
etc.unitbv.ro 193.254.231.35
dyna.wikimedia.org 91.198.174.192
我正在考虑为别名实现if-else,但我不知道如何对当前命令执行操作。如果有人对如何格式化 nslookup 以像给定的输出一样显示它有更好的理解,也可以更改脚本。
【问题讨论】:
-
顺便说一句:修复你的shebang。
标签: shell awk sed nslookup dig