philipph
Goto Top

DNS Abfragescript

Hallo Community,

ich habe folgende Aufgabenstellung:

Gegeben ist eine csv Datei mit Domains.
Beispiel:

Spalte 1 Spalte 2 Spalte 3

domain1.de
domain2.de
domain3.de
usw....

Ich möchte nun eine Abfrage der CSV Datei mittels dig um festzustellen, welcher Nameserver verwendet wird. Das
Ergebnis soll hinter der Domain, also in Spalte 2 geschrieben werden.
Mich interessieren hierbei nur zwei Nameserver, z.B.: NS1 und NS2

Bis jetzt habe ich folgendes:

#!/bin/bash
for domain in `cat Domain_Bestand.csv`
do
echo $domain
`dig ns +short $domain | grep ns1 >> resultdns.csv`
done


Also Ergebnis habe ich nun:

ns1
ns1
ns1

falls alle 3 Domains auf den NS1 zeigen. Nun möchte ich aber auch NS2 miteinbeziehen, also eine UND Verknüpfung, außerdem, das direkte schreiben in die Spalte 2. Bei meiner Lösung muss ich ja die Spalte rüberkopieren, damit das Ergebnis schlüssig ist. Falls NS1 und NS2 nicht matcht, dann ein Platzhalter, sonst stimmt meine Domainzuordung ja auch nicht mehr..

DAnke für Eure Hilfe

Content-ID: 206113

Url: https://administrator.de/contentid/206113

Ausgedruckt am: 22.11.2024 um 19:11 Uhr

64748
64748 06.05.2013 um 20:30:28 Uhr
Goto Top
Guten Abend,

grep bietet mit der -E Option die Möglichkeit, "erweiterte Reguläre Ausdrücke" zu benutzen. Um also nach ns1 oder ns2 zu suchen, kannst Du den Ausdruck
grep -E ns[12]
benutzen, also mit der Zeichenklasse [12] trifft ns[12] auf ns1 und auf ns2 zu.

Wegen des Anhängens der Spalte solltest Du Dir mal den join-Befehl ansehen.

Wenn Du fit mit sed bist, kannst Du das auch alles damit machen.

Markus
PhilippH
PhilippH 06.05.2013 um 22:07:52 Uhr
Goto Top
Werde ich einmal testen, vielen Dank!