IP Adressen aus Hosts Tabelle auslesen
Hallo,
die Werte aus einer Hosts Tabelle möchte ich mit Hilfe eines Batch, wie u.a. auslesen:
Beispiel:
192.155.200.1 GSMROUTER
192.156.206.3 ITGS01 # Lager Eins
'# 192.168.206.1 ITGS02 # Lager Zwei
'# 192.169.206.10 ITGS03 # FU - Shop München 11
192.169.206.10 ITGS04 # FUS - int. Sanitätshaus
Im Beispiel aufgeführt sind die "Ausgangswerte", so wie sie in der Hosts Datei hinterlegt sind.
Als Output sollen dann nur die folgenden Daten in der u.a. Struktur ausgegeben werden:
192.155.200.1 GSMROUTER
192.156.206.3 ITGS01
192.169.206.10 ITGS04
Das Herausfiltern der Datensätze, die mit dem "#" beginnen habe ich hinbekommen:
findstr /b /v /c:"#" hosts.txt >> D:\Temp\hosts1.txt
Nur der nächste Schritt, also die IP-Adresse, ein Leerzeichen und die Namenszuweisung auszuwerfen, ist mir noch nicht geglückt.
Versucht hatte ich das wie folgt:
for /f "tokens=1,2 delims= " %%a in (D:\Temp\hosts1.txt) do (
echo %%a %%b >> D:\Temp\hosts2.txt
)
Heraus gekommen ist dann in der Datei: "hosts2.txt":
192.155.200.1 GSMROUTER
192.156.206.3 ITGS01 # Lager Eins
192.169.206.10 ITGS04 # FUS - int. Sanitätshaus
Bestimmt hat da jemand eine Idee, wie das (besser) geht....
Vielen Dank und Gruß
Markus
die Werte aus einer Hosts Tabelle möchte ich mit Hilfe eines Batch, wie u.a. auslesen:
Beispiel:
192.155.200.1 GSMROUTER
192.156.206.3 ITGS01 # Lager Eins
'# 192.168.206.1 ITGS02 # Lager Zwei
'# 192.169.206.10 ITGS03 # FU - Shop München 11
192.169.206.10 ITGS04 # FUS - int. Sanitätshaus
Im Beispiel aufgeführt sind die "Ausgangswerte", so wie sie in der Hosts Datei hinterlegt sind.
Als Output sollen dann nur die folgenden Daten in der u.a. Struktur ausgegeben werden:
192.155.200.1 GSMROUTER
192.156.206.3 ITGS01
192.169.206.10 ITGS04
Das Herausfiltern der Datensätze, die mit dem "#" beginnen habe ich hinbekommen:
findstr /b /v /c:"#" hosts.txt >> D:\Temp\hosts1.txt
Nur der nächste Schritt, also die IP-Adresse, ein Leerzeichen und die Namenszuweisung auszuwerfen, ist mir noch nicht geglückt.
Versucht hatte ich das wie folgt:
for /f "tokens=1,2 delims= " %%a in (D:\Temp\hosts1.txt) do (
echo %%a %%b >> D:\Temp\hosts2.txt
)
Heraus gekommen ist dann in der Datei: "hosts2.txt":
192.155.200.1 GSMROUTER
192.156.206.3 ITGS01 # Lager Eins
192.169.206.10 ITGS04 # FUS - int. Sanitätshaus
Bestimmt hat da jemand eine Idee, wie das (besser) geht....
Vielen Dank und Gruß
Markus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 305711
Url: https://administrator.de/contentid/305711
Ausgedruckt am: 08.11.2024 um 07:11 Uhr
2 Kommentare
Neuester Kommentar
Here you go:
Gruß skybird
>"D:\Temp\hosts2.txt" (for /f "tokens=1,2" %%a in ('type "%SYSTEMROOT%\system32\drivers\etc\hosts" ^| findstr /b "[0-9]"') do @echo %%a %%b)