excavar mostrar solo respuesta

49

Quiero cavar solo para mostrar la respuesta de mi consulta.

Normalmente, imprime mucha información adicional como esta:

;; <<>> DiG 9.7.3 <<>> google.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55839
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;google.de.                     IN      A

;; ANSWER SECTION:
google.de.              208     IN      A       173.194.69.94

;; Query time: 0 msec
;; SERVER: 213.133.99.99#53(213.133.99.99)
;; WHEN: Sun Sep 23 10:02:34 2012
;; MSG SIZE  rcvd: 43

Quiero que esto se reduzca solo a la sección de respuestas.

cavar tiene muchas opciones, una buena que encontré fue +noall +answer

; <<>> DiG 9.7.3 <<>> google.de +noall +answer
;; global options: +cmd
google.de.              145     IN      A       173.194.69.94

Deja de lado la mayoría de las cosas, pero aún muestra estas opciones.

¿Alguna idea sobre cómo eliminarlo usando las opciones de excavación? Seguro que podría cortarlo usando otras herramientas, pero una opción con cavar en sí sería la más limpia y agradable.

Zulakis
fuente
1
Algo dentro ${HOME}/.digrc?
ablackhat
No, buena idea, aunque
Zulakis

Respuestas:

50

No estoy seguro de por qué recibes comentarios en la salida. Ese es el conjunto correcto de opciones para el comportamiento que desea. Aquí están las mismas opciones con la misma versión de dig:

$ dig -version
DiG 9.7.3
$ dig +noall +answer google.de
google.de.      55  IN  A   173.194.44.216
google.de.      55  IN  A   173.194.44.223
google.de.      55  IN  A   173.194.44.215
$
Cakemox
fuente
8
Esto parece bastante interesante. El uso de dig +noall +answer google.defunciona, dig google.de +noall +answerno, aunque sea compatible de acuerdo con el manual.
Zulakis
44
El orden de las banderas aparentemente importa.
generalnetworkerror
18

Use la opción "+ short"

[root@myhost ~]# dig +short google.com
216.58.194.142

[root@myhost ~]# dig +short -x 216.58.194.142
dfw06s49-in-f14.1e100.net.
dfw06s49-in-f142.1e100.net.

[root@myhost ~]# dig +short google.com soa
ns1.google.com. dns-admin.google.com. 181803313 900 900 1800 60
Alphonse Musette
fuente
Lo siento, tuve que editar mi formato. Esperemos que ahora esté claro.
Alphonse Musette
1
Todavía no lo entiendo, ¿POR QUÉ y CÓMO es esta una respuesta a la pregunta?
Pierre.Vriens
55
Supongo que hice una suposición sobre la intención del interrogador original. Para mí, la línea de respuesta completa es menos útil. Y puedo hacer "dig google.com | grep ^ google" si no recuerdo las opciones de dig. Pero la opción + corta devuelve una dirección IP o nombre de host sin texto adicional, que puedo (por ejemplo) usar en un script para crear una regla de firewall. Esa suele ser la parte de la salida de dig que me importa. Con las opciones "+ noall + noanswer" todavía debo aplicar un procesamiento de cadena si quiero usar el resultado en un script.
Alphonse Musette
6

Uso dig +param domain, no dig domain +param.

% dig +noall +answer -t aaaa d.ns.zerigo.net
d.ns.zerigo.net.        37788   IN      AAAA    2607:fc88:1001:1::4
% dig -t aaaa d.ns.zerigo.net +noall +answer

; <<>> DiG 9.9.2-P2 <<>> -t aaaa d.ns.zerigo.net +noall +answer
;; global options: +cmd
d.ns.zerigo.net.        37797   IN      AAAA    2607:fc88:1001:1::4

+noall +answerEl interruptor funciona de manera diferente dependiendo de su posición en la línea de comando. Esto seguramente es un error digya que +shortfunciona bien en ambos lados.

% dig +short -t aaaa d.ns.zerigo.net
2607:fc88:1001:1::4

% dig -t aaaa d.ns.zerigo.net +short
2607:fc88:1001:1::4
Nowaker
fuente
¿Lo archivó como error o por qué agregó esta paráfrasis de la respuesta aceptada a esta pregunta que se resolvió hace 2 años?
Zulakis
La respuesta aceptada dice "No estoy seguro de por qué está recibiendo comentarios en la salida", mientras que sé por qué y esta respuesta es la más precisa.
Nowaker
1
probablemente porque puede consultar más de un nombre a la vez. compare 'dig -t soa + noall + answer yahoo.com google.com + question' con 'dig -t soa + noall + answer yahoo.com + question google.com'
simpleuser
1

De acuerdo con la página del manual, es posible que desee probar:

dig google.de +noall +answer +nocomments

Si eso no funciona, ¿tendría que preguntar qué distribución está utilizando?

Editar: Eso es lo más raro. Tienes que poner las opciones antes de la consulta.

[jglenn@lin02 ~]$ dig +noall +answer google.de
google.de.              35      IN      A       74.125.227.119
google.de.              35      IN      A       74.125.227.120
google.de.              35      IN      A       74.125.227.127
[jglenn@lin02 ~]$ dig +answer google.de +noall

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.3 <<>> +answer google.de +noall
;; global options: +cmd
[jglenn@lin02 ~]$ dig google.de +noall +answer

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6_3.3 <<>> google.de +noall +answer
;; global options: +cmd
google.de.              203     IN      A       74.125.227.119
google.de.              203     IN      A       74.125.227.120
google.de.              203     IN      A       74.125.227.127
ablackhat
fuente
44
Vea a continuación, excavar de alguna manera lo arruina cuando está dig google.de +noall +answer, debe ser dig +noall +answer google.depara que funcione. nocommentsya está incluido ennoall
Zulakis