@echo off & setlocal ENABLEDELAYEDEXPANSION
TITLE Systeminformationen
echo ##############################################################
echo # #
echo # Sammelt Systeminformationen (Servername, System, #
echo # Distribution, Version, Ram, Haupt-IP, IPs, #
echo # Festplattengroesse, CPU-Geschwindigkeit, Anzahl der CPUs) #
echo # #
echo # Schreibt diese in eine Datei mit dem Namen des Servers #
echo # (in denselben Ordner, wo sich dieses Skript befindet) #
echo # #
echo ##############################################################
echo.
rem D:\tmp.txt ggf durch anderen pfad ersetzen und anpassen unten
systeminfo > sysinfo.tmp
REM Zeige Rechnername
for /f "delims=" %%i in ('findstr /c:"Hostname" sysinfo.tmp') do set "hostname=%%i"
set name=%hostname:~40%
echo ^|Servername=%hostname:~40% > %name%.txt
REM Zeige Betriebssystem
echo ^|System=Windows >> %name%.txt
REM Wenn Enterprise gefunden wird, Distribution=Enterprise, sonst Distribution=Standard
for /f "delims=" %%i in ('findstr /c:"Enterprise" sysinfo.tmp') do set "distriname=Enterprise"
if distriname==Enterprise (
echo ^|Distribution=Enterprise >> %name%.txt
)
if not distriname==Enterprise (
echo ^|Distribution=Standard >> %name%.txt
)
REM Zeige Version der Distribution
for /f "delims=" %%i in ('findstr /c:"Windows NT" sysinfo.tmp') do set "version=NT"
for /f "delims=" %%i in ('findstr /c:"Windows 2008" sysinfo.tmp') do set "version=2008"
for /f "delims=" %%i in ('findstr /c:"Windows 2003" sysinfo.tmp') do set "version=2003"
for /f "delims=" %%i in ('findstr /c:"Windows 2000" sysinfo.tmp') do set "version=2000"
for /f "delims=" %%i in ('findstr /c:"Windows XP" sysinfo.tmp') do set "version=XP"
echo ^|Version=%version% >> %name%.txt
REM Version, Patchlevel etc
for /f "delims=" %%i in ('findstr /c:"Betriebssystemversion" sysinfo.tmp') do set "patchlevel=%%i"
echo ^|Patchlevel=%patchlevel:~40% >> %name%.txt
REM Zeige Ram
for /f "delims=" %%i in ('findstr /c:"Gesamter physikalischer Speicher" sysinfo.tmp') do set "ram=%%i"
echo ^|Ram=%ram:~40% >> %name%.txt
REM Zeige IPs(?)
ipconfig /all > H:/ip.tmp
for /f "delims=" %%i in ('findstr /c:"IP-Adresse" ip.tmp') do set "ips=%%i"
echo ^|IPs=%ips:~44% >> %name%.txt
REM Zeige Festplatten (Adminrechte nötig) ...ToDo...
REM Zeige CPU(s)
for /f "delims=" %%i in ('findstr /c:"Prozessor(en):" sysinfo.tmp') do set "cpus=%%i"
echo ^|CPU(s)=%cpus:~40% >> %name%.txt
REM Zeige CPU-Typ
for /f "delims=" %%i in ('findstr /c:"MHz" sysinfo.tmp') do set "mhz=%%i"
echo ^|CPU Typ=%mhz:~40% >> %name%.txt
REM Zeige CPU Count
set /a cpucount=0
for /f "delims=" %%i in ('findstr /c:"MHz" sysinfo.tmp') do (
set /a cpucount+=1
)
echo ^|Kerne=%cpucount% >> %name%.txt
REM Aufräumen
del *.tmp
exit