Due comandi, una pipeline


11

Ho bisogno di questi due comandi per essere uno (in modo da poterli convogliare ulteriormente):

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

Voglio dire, ho bisogno che l'output di questi due comandi sia in una pipe:

$ 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

e

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

in modo che potessi sha256summetterli insieme, senza scrivere l'output dei due comandi in un file e sha256sumil file.

Q: è così:

echo hi | echo hi2 | sha256sum

ovviamente questo non funzionerà, ma ci sono soluzioni per questo? Quindi ho bisogno della somma di sha256 di:

hi
hi2
-->>
697ec886148d94d5b094df14f301f2e5a4abd8098a0e0dc2afb0a97945cea677

ma posso avere solo gli output da comandi diversi [menzionati sopra, 2 domini diversi]. [Voglio solo scrivere uno script "Controllo DNS" per avvisarmi quando i record DNS cambiano per un dominio]

Risposte:


14

Puoi passare più nomi a dig:

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

33

Una soluzione generale è la seguente:

{ command1; command2; } | some-other-command

Or ( command1; command2; ) | some-other-command.
hlovdal

4
@hlovdal: sì, ma in tal caso stai eseguendo una subshell (qualcuno preferirebbe sapere), e il secondo ;non è richiesto.
enzotib,

0

Esistono due modi per ottenere esattamente quell'output senza grepping:

Disattiva le sezioni che non desideri:

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

Disattiva tutte le sezioni, quindi attiva le sezioni che desideri:

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

Inoltre, sembra che l'output dia una sezione diversa additional(o " glue") ogni volta, quindi potresti voler utilizzare +noadditionalse stai solo cercando di verificare le modifiche al file di zona.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.