dig 命令已弃用。我正在使用来自 ldns 的 drill。Drill 似乎没有一个简短的选项来仅显示 ip。有人知道我如何才能让它只显示 ip 而不显示其他文本吗?
答案1
curl -fSs https://1.1.1.1/cdn-cgi/trace | awk -F= '/ip/ { print $2 }'
答案2
dig
看起来+short
像这样:
$ dig +short example.com
XXX.XX.XX.XXX
因此,您可以简单地执行以下操作:
$ drill example.com | awk '{if(NF > 0 && substr($1,1,1) != ";") print $NF }'
XXX.XX.XX.XXX
了解我的awk
if (NF > 0) # If the line is not empty
if (substr($1,1,1) != ";") # If the first character is not `;`
print $NF # Print the last column.
答案3
这里的聚会有点晚了,但看起来drill
~现在~有一个-Q
(“安静”)标志,其功能与 dig 的相同+short
:
$ drill -Q superuser.com
104.18.8.56
104.18.9.56
更新:看起来这个功能已经存在ldns
了至少是 1.0.0 版本。您可能只是在研究中错过了它,因为drill
它的目标并不是成为 的 100% 替代品dig
?
上一个答案
有点令人惊讶的是,这个功能显然2005 年承诺,但不是在发布版本中至 2021 年 11 月。
我不确定是什么原因导致它(和其他提交)搁置了 16 年,但至少你
drill
现在有一个原生解决方案!