Wie kann ich die MAC Adresse eines Computers per Batch auslesen?

2 Antworten

So geht das unter Windows:

[GetLocalMAC.cmd]

@echo off
setlocal enabledelayedexpansion
set lbl_txt=Physikalische Adresse
set lbl_len=21
set MAC=
for /f "usebackq tokens=1,2* delims=:" %%I in (`ipconfig /all`) do (
set label=%%~I
set value=%%~J
if /i "!label:~0,%lbl_len%!" == "%lbl_txt%" set MAC=!value:~1,!
)
if defined MAC (
echo.!MAC!
) else (
echo.Die MAC-Adresse konnte nicht ermittelt werden.
exit /b 1
)

Dieses Skript kannst Du so auch für alle Sprachen leicht anpassen.

Ich bin mir nicht mehr sicher, aber IPCONFIG sollte eigentlich ab NT4/9x funktionieren, zumindest ab 2000. Jedoch funktionieren SETLOCAL und die IF- und FOR-Strukturierungen erst ab 2000 und daher müsste die Ausgabe dann anders erfolgen, bzw. vereinfacht werden.

Das "~1," bei der MAC-Zuweisung entfernt das führende Leerzeichen!

Mit "getmac" erhältst du die MAC jedes Interfaces.


questionanswer7 
Beitragsersteller
 23.04.2017, 14:16

Hi

Gibt es auch einen Befehl, der die MAC "direkt" ausliest, sprich dass nur eine Adresse erscheint?

Bsp. "getmac /direct" liefert "xx-xx-xx-xx-xx"


Muss nicht unbedingt die MAC sein, kann auch ein anderer einzigartiger Code sein, muss einfach direkt ausgelesen werden können.

LG

1
GutefrageNetFun  23.04.2017, 14:32
@questionanswer7

Mit "wmic csproduct get uuid" erhältst du auch eine einmalige Nummer.

Ob diese Ausgabe besser geeignet ist, weiß ich nicht.

0