Domanda

Diciamo che ho una lista di indirizzi IP che entrano in un registro che sto tailing:

1.1.1.1
1.1.1.2
1.1.1.3 

mi piacerebbe risolvere facilmente ad ospitare nomi. Mi piacerebbe essere in grado di

tail -f access.log | host - 

Il che non riesce come ospite non capisce di input provenienti da standard input in questo modo. Qual è il modo più semplice per farlo con senza dover scrivere un file statico o di riserva per Perl / Python / ecc.?

È stato utile?

Soluzione

Usa xargs -l:

tail -f access.log | xargs -l host

Altri suggerimenti

È anche possibile utilizzare il leggere incorporato :

tail -f access.log | while read line; do host $line; done

Nei comandi seguenti, sostituire cat con tail -f, ecc se necessario.

host Usando:

$ cat my_ips | xargs -i host {}
1.1.1.1.in-addr.arpa domain name pointer myhost1.mydomain.com.
1.1.1.2.in-addr.arpa domain name pointer myhost2.mydomain.com.

dig Usando:

$ cat my_ips | xargs -i dig -x {} +short
myhost1.mydomain.com.
myhost2.mydomain.com.

Si noti che l'opzione -i al xargs implica l'opzione -L 1.

Per prima ottenere gli indirizzi IP del proprio host, vedere questa risposta .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top