Aus Bind-Zonefiles HTML-Übersicht kreieren
- feltel
- Webmaster
- Beiträge: 10477
- Registriert: 20.12.2001 13:08:23
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Leipzig, Germany
-
Kontaktdaten:
Aus Bind-Zonefiles HTML-Übersicht kreieren
Kennt jemand ein Tool, Script oder nen kryptischen Perl-Oneliner, um aus einem Bind-Zonefile eine Übersicht über die dort konfigurierten IP-Adressen zu machen, z.B. Sortiert nach Hostnamen oder aufsteigend nach IP-Adresse?
debianforum.de unterstützen? Hier! | debianforum.de Verhaltensregeln | Bitte keine Supportanfragen per PM
Hallo,
loest dass vielleicht dein Problem ? Ausgabe waere sowas in der Art:
?
das Awk script in ner lesbaren form:
wenn du nach jedem tag noch ein \n einfuegst wird der html-code sogar lesbar... 
Wenn das nich so ganz is was du suchst, dann sag bescheid, das Teil laesst sich sicher auf deine Beduerfnisse zuschneiden
/EDIT: oehm, wer lesen kann is klar im Vorteil... sortiert... hmm, sekunde *bastel*
Code: Alles auswählen
cat /etc/bind/192.168.zone | grep "\.$" | awk 'BEGIN{print "<html><head></head><body><table>"}{if($3 == "PTR"){host=$4;gsub(/\.$/,"",host);print "<tr><td>" host "</td><td>" $1 "</td></tr>" } } END { print "</table></body></html>"} '
Code: Alles auswählen
<html><head></head><body><table>
<tr><td>gateway</td><td>1.0</td></tr>
<tr><td>phoenix</td><td>6.0</td></tr>
<tr><td>firebird</td><td>6.1</td></tr>
<tr><td>singularity</td><td>7.0</td></tr>
<tr><td>savy</td><td>4.0</td></tr>
<tr><td>warden</td><td>5.0</td></tr>
<tr><td>wigwam</td><td>101.0</td></tr>
</table></body></html>
das Awk script in ner lesbaren form:
Code: Alles auswählen
BEGIN {
print "<html><head></head><body><table>"
}
{
if($3 == "PTR")
{
host=$4;
gsub(/\.$/,"",host);
print "<tr><td>" host "</td><td>" $1 "</td></tr>"
}
}
END {
print "</table></body></html>"
}

Wenn das nich so ganz is was du suchst, dann sag bescheid, das Teil laesst sich sicher auf deine Beduerfnisse zuschneiden

/EDIT: oehm, wer lesen kann is klar im Vorteil... sortiert... hmm, sekunde *bastel*
So, jetzt die korrigierte Version mit sorting. Sorry fuer den ersten post...
liefert:
hier gibts den code : http://nopaste.debianforum.de/3969
hier gibts die Beispieldatei: http://nopaste.debianforum.de/3970
hoffe das hilft
Code: Alles auswählen
cat inp.txt | awk -v sorthost=1 -v ipPrefix="192.168" -v hostSuffix="blubb.com" -f test.awk
Code: Alles auswählen
<html><head></head><body><table>
<tr><td>airgate.blubb.com</td><td>192.168.1.1</td></tr>
<tr><td>firebird.blubb.com</td><td>192.168.1.6</td></tr>
<tr><td>gateway.blubb.com</td><td>192.168.0.1</td></tr>
<tr><td>muellbox.blubb.com</td><td>192.168.0.3</td></tr>
<tr><td>phoenix.blubb.com</td><td>192.168.0.6</td></tr>
<tr><td>savy.blubb.com</td><td>192.168.0.4</td></tr>
<tr><td>singularity.blubb.com</td><td>192.168.0.7</td></tr>
<tr><td>warden.blubb.com</td><td>192.168.0.5</td></tr>
<tr><td>wigwam.blubb.com</td><td>192.168.0.101</td></tr>
</table></body></html>
Code: Alles auswählen
-v sorthost=1 : Falls gesetzt , sortiert nach hosts. Falls nich gesetzt, sortiert nach ip-addressen
-v ipPrefix="192.168" : prefix um an die ip-addressen vorne-anzustellen
-v hostSuffix="blubb.com": domain suffix
hier gibts die Beispieldatei: http://nopaste.debianforum.de/3970
hoffe das hilft
