此命令将显示MX记录的输出:
dig @ns1.myname.com myname.com +short MX这将产生一个记录:
dig @ns1.myname.com myname.com +short A我的问题是如何同时输出A和MX,并在一个输出显示器中显示+short?
更新: Cakemox --这是我收到的输出:
root@server1:~# dig +noall +answer @ns1.myname.com myname.com MX
myname.com. 86400 IN MX 10 ASPMX2.GOOGLEMAIL.COM.
myname.com. 86400 IN MX 10 ASPMX3.GOOGLEMAIL.COM.
myname.com. 86400 IN MX 1 ASPMX.L.GOOGLE.COM.
myname.com. 86400 IN MX 5 ALT1.ASPMX.L.GOOGLE.COM.
myname.com. 86400 IN MX 5 ALT2.ASPMX.L.GOOGLE.COM.我希望只需要一个dig命令就可以得到这样的输出,而不必用分号分隔?
root@server1:~# dig @ns1.myname.com myname.com +short MX; dig @ns1.myname.com myname.com +short A
5 ALT1.ASPMX.L.GOOGLE.COM.
5 ALT2.ASPMX.L.GOOGLE.COM.
10 ASPMX2.GOOGLEMAIL.COM.
10 ASPMX3.GOOGLEMAIL.COM.
1 ASPMX.L.GOOGLE.COM.
63.98.113.202发布于 2012-02-05 19:46:22
你所说的“一次显示输出”是什么意思?
由于简单性,我几乎无法想象这是真正的答案,但基于我现在假设的答案,这应该可以实现:
dig @ns1.myname.com myname.com +short MX; dig @ns1.myname.com myname.com +short A通过用分号将几条命令分隔开,可以简单地将多个命令排在一行中。
发布于 2012-02-05 19:49:30
dig +noall +answer @ns1.myname.com myname.com ANY如果您不需要所有的类型,可以使用grep,或者依次查询所需的每个类型。
发布于 2016-03-21 16:08:19
您可以将它们组合成一个没有分号的命令,但正如在另一个问题中所指出的,它仍然会向服务器发送2个查询(这里没有问题):
dig @ns1.myname.com myname.com +short MX @ns1.myname.com myname.com +short A您可以“重用”dig命令,并继续以四重奏(URL、服务器到查询、查询类型、查询选项)发送新的查询参数,只要您提供了足够的信息,以便在每个四方上运行一个查询。更简单的是,您只需要指定一次服务器和查询选项,所以这是可行的:
dig +short @ns1.myname.com myname.com MX myname.com A如果出于某种原因只需要一个查询,则可以使用ANY和dig (确保您是在查询权威服务器,而不是递归服务器的缓存),并使用-E选项输出答案:
dig +noall +answer @ns1.myname.com myname.com MX myname.com A | grep -E '[[:space:]]A[[:space:]]|MX[[:space:]]'注意:不能在此路由中使用+short,因为它移除需要使用grep的记录类型。
https://serverfault.com/questions/357058
复制相似问题