Dos comandos, una tubería

11

Necesito que estos dos comandos sean uno (para poder canalizarlos más):

dig +nottlid -t any bix.hu | egrep -v "^;;|^;|^$" | sort
dig +nottlid -t any www.bix.hu | egrep -v "^;;|^;|^$" | sort

Quiero decir que necesito que la salida de estos dos comandos esté en una tubería:

$ dig +nottlid -t any bix.hu | egrep -v "^;;|^;|^$" | sort
bix.hu.         IN  A   193.239.149.1
bix.hu.         IN  MX  10 deneb.iszt.hu.
bix.hu.         IN  NS  ns.iszt.hu.
bix.hu.         IN  NS  ns.iszt.hu.
bix.hu.         IN  NS  ns-s.nic.hu.
bix.hu.         IN  NS  ns-s.nic.hu.
bix.hu.         IN  SOA ns.iszt.hu. hostmaster.iszt.hu. 2011053000 28800 7200 604800 14400

y

dig +nottlid -t any www.bix.hu | egrep -v "^;;|^;|^$" | sort
bix.hu.         IN  NS  ns.iszt.hu.
bix.hu.         IN  NS  ns-s.nic.hu.
www.bix.hu.     IN  A   193.239.149.1

para poder sha256sumjuntarlos, sin escribir la salida de los dos comandos en un archivo y sha256sumel archivo.

P: es así:

echo hi | echo hi2 | sha256sum

Por supuesto, esto no funcionará, pero ¿hay alguna solución para esto? Para que necesite la suma de sha256s de:

hi
hi2
-->>
697ec886148d94d5b094df14f301f2e5a4abd8098a0e0dc2afb0a97945cea677

pero solo puedo tener las salidas de diferentes comandos [mencionados anteriormente, 2 dominios diferentes]. [Solo quiero escribir un script de "Comprobador de DNS" para avisarme cuando DNS registre cambios para un dominio]

LanceBaynes
fuente

Respuestas:

14

Puede pasar varios nombres a dig:

dig +nottlid -t any bix.hu www.bix.hu | egrep -v "^;;|^;|^$" | sort
Estera
fuente
33

Una solución general es la siguiente:

{ command1; command2; } | some-other-command
enzotib
fuente
O ( command1; command2; ) | some-other-command.
hlovdal
44
@hlovdal: sí, pero en ese caso estás ejecutando un subshell (alguien preferiría saberlo), y el segundo ;no es obligatorio.
enzotib
0

Hay dos formas de obtener exactamente esa salida sin grepping:

Apague las secciones que no desea:

dig +nottlid +nocomments +noquestion +nostats +nocmd -t any bix.hu

Apague todas las secciones y luego encienda las secciones que desee:

dig +nottlid +noall +authority +answer +additional -t any bix.hu

Además, parece que la salida proporciona una sección diferente additional(o " glue") cada vez, por lo que es posible que desee usarla +noadditionalsi solo está tratando de verificar los cambios en el archivo de zona.

Mikel
fuente