Windows: Über die Kommandozeile CPU- und RAM-Auslastung auslesen

Kurz notiert, da ich gerade so einen Fall hatte: Hat man auf ein System z.B. nur per PsExec Zugriff oder möchte via Skript die aktuellen CPU- und Arbeitsspeicher-Auslastung erfassen, so gibt es gleich mehrere Wege.

Beispiele:

C:\Windows\Temp>wmic cpu get loadpercentage
LoadPercentage
5

C:\Windows\Temp>wmic ComputerSystem get TotalPhysicalMemory
TotalPhysicalMemory
4157726720

C:\Windows\Temp>wmic OS get FreePhysicalMemory
FreePhysicalMemory
1031288

Wie man hier sehen kann, gibt es nur 5% Gesamt-CPU-Auslastung, 4 GB RAM sind verbaut, 1 GB ist davon noch frei.

Für den Arbeitsspeicher kann man zudem “systeminfo” verwenden:

C:\Windows\Temp>systeminfo | find /I "Speicher"
Gesamter physikalischer Speicher: 3.965 MB
Verfügbarer physikalischer Speicher: 1.116 MB
Virtueller Arbeitsspeicher: Maximale Größe: 7.928 MB
Virtueller Arbeitsspeicher: Verfügbar: 3.600 MB
Virtueller Arbeitsspeicher: Zurzeit verwendet: 4.328 MB

Das ist jetzt nur der Schnellschuss, daneben gibt es noch mehr Möglichkeiten über die PowerShell oder andere Tools.

Quellen:

stackoverflow – Get CPU Usage from Windows Command Prompt

stackoverflow – How to get the Percentage of memory utilization using WMIC in batch script?

squidworks – How-to Emulate the TOP command in Windows

Update 06.11.2020

Als simples Skript um den verfügbaren Speicher zu erfassen, kann man folgendes z.B. als Aufgabe ausführen lassen:

@echo off

echo. >> FreeRAM.log
echo %date% - %time% >> FreeRAM.log

systeminfo | find /I "Verfgbarer physischer Speicher:" >> FreeRAM.log

Der Umlaut “ü” wurde bewusst weggelassen, da sonst bei der Ausführung als Aufgabe die Abfrage nicht klappt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.