Aus Text File bestimmte Daten ausschneiden
Hallo Leute,
ich stehe gerade auf dem Schlauch und komme einfach nicht weiter.
Ich benötige für ein weiteres Batchfile die MAC Adressen meines Servers.
Ich gehe also zuerst hin und lasse mir per
ipconfig /all |findstr /i /C:"Physical Address" >>%LOG%
die MAC Adressen in ein Logfile schreiben.
Leider wird mir aber die komplette Zeile ins Logfile geschrieben
z.B. "Physical Address. . . . . . . . . : XX-XX-XX-XX-XX-XX"
Ich benötige aber eigentlich nur die MAC Adresse, also z.B.:
XX-XX-XX-XX-XX-XX
Leider weiss ich nicht wie ich dies bewerkstelligen kann.
Hat hier jemand eine Idee für mich?
cu
Casper2k
ich stehe gerade auf dem Schlauch und komme einfach nicht weiter.
Ich benötige für ein weiteres Batchfile die MAC Adressen meines Servers.
Ich gehe also zuerst hin und lasse mir per
ipconfig /all |findstr /i /C:"Physical Address" >>%LOG%
die MAC Adressen in ein Logfile schreiben.
Leider wird mir aber die komplette Zeile ins Logfile geschrieben
z.B. "Physical Address. . . . . . . . . : XX-XX-XX-XX-XX-XX"
Ich benötige aber eigentlich nur die MAC Adresse, also z.B.:
XX-XX-XX-XX-XX-XX
Leider weiss ich nicht wie ich dies bewerkstelligen kann.
Hat hier jemand eine Idee für mich?
cu
Casper2k
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 70231
Url: https://administrator.de/forum/aus-text-file-bestimmte-daten-ausschneiden-70231.html
Ausgedruckt am: 28.04.2025 um 23:04 Uhr
9 Kommentare
Neuester Kommentar
Hallo Casper2k und willkommen im Forum!
Du könntest es so versuchen:
Das zweite "for" dient dem Entfernen der Leerstelle vor der MAC-Adresse - falls diese nicht stören sollte, genügt auch:
Grüße
bastla
[Edit] Fehlendes %-Zeichen bei "echo %%i" nachgetragen. [/Edit]
Du könntest es so versuchen:
@echo off & setlocal
for /f "tokens=2 delims=:" %%i in ('ipconfig /all^|findstr /c:"Physikalische Adresse"') do for /f %%m in ('echo %%i') do set MAC=%%m
echo %MAC%
for /f "tokens=2 delims=:" %%i in ('ipconfig /all^|findstr /c:"Physikalische Adresse"') do set MAC=%%i
Grüße
bastla
[Edit] Fehlendes %-Zeichen bei "echo %%i" nachgetragen. [/Edit]
Hallo Casper2k!
Beim "echo %%i" hatte ich nur ein %-Zeichen - ist oben schon korrigiert.
Grüße
bastla
P.S.: Mir gefällt paulepank's Lösung besser ...
Beim "echo %%i" hatte ich nur ein %-Zeichen - ist oben schon korrigiert.
... dort steht dann "disabled".
Falls es Dir genügt, das "disabled" zu vermeiden, könnte es so gehen:for /f %i in ('getmac /nh^|findstr /v "disabled"') do @echo %i
Grüße
bastla
P.S.: Mir gefällt paulepank's Lösung besser ...
moin,
du kannst diesen Code ergänzen
Das Programm tr.exe kannst du dir aus dem Paket unxutils herausziehen und in deinen System32-Ordner kopieren.
Alternativ kannst du auch warten bis Bastla Langeweile hat.
P.S. was fällt dir Morgen ein ?
cu paulepank
du kannst diesen Code ergänzen
@echo off & setlocal enabledelayedexpansion
set /a n=1
for /f %%i in ('getmac /nh^|findstr /v "disabled"^|tr -d "-"') do (
set var!n!=%%i
set /a n+=1
)
set var
Das Programm tr.exe kannst du dir aus dem Paket unxutils herausziehen und in deinen System32-Ordner kopieren.
Alternativ kannst du auch warten bis Bastla Langeweile hat.
P.S. was fällt dir Morgen ein ?
cu paulepank