Um Inventarlisten abzugleichen, mussten nachträglich die Seriennummern von einigen PCs die Seriennummern extrahiert werden.
Dazu habe ich folgendes „Batch-Skript“ zusammengeschrieben.
1. Zuerst eine Liste mit den gewünschten Hosts erstellen (hier beispielhaft):
hostliste.txt
CLIENT1
CLIENT2
CLIENT3
2. Dann ein kleines Batch Skript erstellen, das als Aufruf für das eigentlich ausführende Skript genutzt wird:
Get-Serial-Aufruf.bat
@ECHO OFF
for /f „tokens=1“ %%i in (hostliste.txt) do call :loop %%i
goto :eof
:loop
ping /n 1 %1|findstr „nicht erreichbar“
if %ERRORLEVEL% == 0 ( goto :eof )
call GetSN.bat %1
goto :eof
3. Das Skript erstellen, das den eigentlichen WMI-Aufruf durchführt:
Get-Serial.bat
@ECHO OFF
SET PC=%1
echo.
echo Start Abfrage %PC%
echo #############
echo.
echo %PC% >> c:\Liste-SN-all.txt & wmic /node:“%PC%“ bios get SerialNumber | more >> c:\Liste-SN-all.txt
echo Ende Abfrage %PC%
echo #############
goto :eof
Dann kann das ganze im Verzeichnis, indem die Dateien gespeichert sind per „Get-Serial-Aufruf.bat“ gestartet werden (am besten in einer CMD-Box aufrufen, um STDOUT Ausgaben mitlesen zu können).
Unter c:\Liste-SN-all.txt ensteht dann die Liste mit den Seriennummern.
4. Download (optional)