
Unter Linux kann ich alle Einträge in der DNS-Tabelle auflisten, die mit „80“ enden, indem ich Folgendes verwende:
dig axfr my.domain | grep 80
Wie mache ich das mit NSlookup unter Windows? Ich habe versucht, NSlookup zu starten und einzugeben
ls my.domain
Damit bekomme ich die vollständige Liste. Aber wie filtere ich das Ergebnis wie bei der Verwendung von grep unter Linux?
Ich habe versucht:
C:\Users\user>nslookup -ls my.domain | find "80"
*** Invalid option: ls
aber es tritt der obige Fehler auf.
Antwort1
Ich glaube, die elegantere Lösung ist die Verwendung von Powershell. Das ist auf jeden Fall besser als die Verwendung von Cygwin auf einem Windows-Rechner – zum einen ist es integriert.
In Bash schreiben wir:
dig axfr my.domain | grep "80"
Das Äquivalent in Powershell wäre:
nslookup -ls my.domain | where {$_ -match "80"}
Oder noch besser: Verwenden Sie reguläre Ausdrücke, um sicherzustellen, dass nur Zeilen abgeglichen 80
werden, die mit folgendem enden:
nslookup -ls my.domain | where {$_ -match "(80)$"}
Wenn Sie außerdem an Domain-Zonen-Transfers interessiert sind, finden Sie möglicherweisediese Antwortnützlich (und hier ist einGitHub-Projekt).
Antwort2
Ich glaube, Sie suchen nach dem find
Befehl.
nslookup -ls my.domain | find "80"
Beachten Sie jedoch, dass weder grep 80
noch find "80"
nur die Einträge zurückgibt,Endein 80
. Beide geben Einträge zurück, dieenthalten 80
Wenn Sie wirklich nur Einträge wünschen, dieEndedarin 80
wäre es besser, es findstr
mit der /e
Flagge zu verwenden (entspricht dem Muster, wenn es am Ende einer Zeile steht) und außerdem einen führenden Punkt einzuschließen (sonst erhalten Sie möglicherweise etwas wie 10.21.37.180).
nslookup -ls my.domain | findstr /e ".80"
Sie können auchCygwin, welches ist„Eine große Sammlung von GNU- und Open-Source-Tools, die eine ähnliche Funktionalität wie eine Linux-Distribution unter Windows bieten.“
BEARBEITEN
Wenn nslookup -ls my.domain
Sie einen Fehler erhalten, versuchen Sie es
echo ls my.domain | nslookup | find "80"
oder wenn Sie wirklich nur diejenigen wollen, die mit .80
try enden
echo ls my.domain | nslookup | findstr /e ".80"