ich bin gerade dabei ein kurzes Script zu erstellen, welches mir für eine Liste von PC im Netzwerk eine simple csv Tabelle erstellt. Leider entsteht bei meiner Version ein ziemliches Chaos, die Daten werden teilweise für einen Rechner über mehere Zeilen verteilt, was mache ich faslch?
@Echo Off setlocal EnableDelayedExpansion set "zManufacturer=" set "zHostName=" set "zOsName=" set "zSystemModel=" set "zSystemType=" set "zTotalPhysicalMemory=" set "zIpAddresses=" set "zCpuName=" set "zBiosSerial=" for /F "tokens=*" %%i in (computernames.txt) do ( for /f "skip=1 tokens=1-6 delims=," %%A in ('wmic /node:%%i computersystem get Manufacturer^,Model^,TotalPhysicalMemory^,SystemType^,Workgroup /format:csv ^| findstr ","') do ( set "zHostName=%%A" set "zManufacturer=%%B" set "zSystemModel=%%C" set "zSystemType=%%D" set "zTotalPhysicalMemory=%%E" ) for /f "tokens=2 delims=:" %%A in ('psexec64 \\%%i -u Administrator -p pass IPCONFIG ^| findstr /i ipv4') do set "zIpAddresses=!zIpAddresses!%%A" set "zIpAddresses=!zIpAddresses:~1!" set "zIpAddresses=!zIpAddresses: =;!" for /f "tokens=1 delims=|" %%A in ('wmic /node:%%i os get name ^|findstr "|"') do set "zOsName=%%A" for /f "tokens=2 delims=," %%A in ('wmic /node:%%i bios get serialnumber^,version /format:csv') do set "zBiosSerial=%%A" for /f "tokens=2 delims=," %%A in ('wmic /node:%%i cpu get name^,version /format:csv') do set "zCpuName=%%A" echo !zHostName!,!zBiosSerial!,!zManufacturer!,!zSystemModel!,!zOsName!,!zSystemType!,!zTotalPhysicalMemory!,!zIpAddresses!,!zCpuName!>> c:\ko.csv ) || ( echo %%i Host aus / Nicht erreichbar ) ) PAUSE
Vielen Dank iV und eine
gute Woche
lg