Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Powershell Prozessorauslastung abfragen

Frage Entwicklung Batch & Shell

Mitglied: 114757

114757 (Level 4)

18.01.2014 um 18:29 Uhr, 4470 Aufrufe, 5 Kommentare, 4 Danke

Hallo liebes Forum,

ich beschäftige mich gerade mit Powershell und möchte mit einem Script kontinuierlich alle 5 Sekunden die Prozessorauslastung abfragen, nur komme ich gerade nicht weiter bei meinem Vorhaben.
Ich habe es mit "get-counter" versucht, aber ich scheitere daran was ich als Parameter angeben muss.
Kann mir jemand von euch einen Tipp geben wie ich das anstelle ?
Zur Info ich arbeite auf einem Windows 7 x64 mit Powershell 3.0.

Vielen Dank
Grüße jodel32
Mitglied: colinardo
LÖSUNG 18.01.2014, aktualisiert um 21:37 Uhr
Hallo jodel32,
das kannst du folgendermaßen machen:
(Hinweis: Dies gilt für ein deutsch lokalisiertes System, wenn es z.B. ein englisches System ist muss man den Counternamen anpassen.)
01.
# Prozessorauslastung alle 5 Sekunden abfragen und ausgeben 
02.
get-counter -Counter "\\$env:COMPUTERNAME\prozessor(_total)\prozessorzeit (%)" -Continuous -SampleInterval 5 | select -ExpandProperty CounterSamples | select CookedValue | %{[Math]::Round($_.CookedValue,2)}
Zusätzlich wird der Wert am Schluss noch auf zwei Dezimalstellen hinter dem Komma gerundet dargestellt.
Hinweis: An die Performance-Counter-Strings kommt man mit dem Performance Monitor von Windows perfmon.msc heran.

Grüße Uwe
Bitte warten ..
Mitglied: AnkhMorpork
18.01.2014, aktualisiert um 18:43 Uhr
Hallo,

meinst du sowas, oder habe ich es falsch verstanden:

01.
$CPUPercent = @{ 
02.
  Name = 'CPUPercent' 
03.
  Expression = { 
04.
    $TotalSec = (New-TimeSpan -Start $_.StartTime).TotalSeconds 
05.
    [Math]::Round( ($_.CPU * 100 / $TotalSec), 2) 
06.
07.
08.
 
09.
Get-Process |  
10.
 Select-Object -Property Name, CPU, $CPUPercent, Description | 
11.
 Sort-Object -Property CPUPercent -Descending | 
12.
 Select-Object -First 4

Gruß

ANKH



EDIT: zu spät und out of range, sorry!
Bitte warten ..
Mitglied: 114757
18.01.2014 um 18:50 Uhr
Hallo Uwe,
Genial, das ist genau das was ich vor hatte, klappt prima, und so schnell
An dem Namen für den Counterwert habe ich mir die Zähne ausgebissen

VIELEN DANK !!

Vielen Dank auch Dir ANKH, das muss ich mir mal anschauen.

Klasse Forum...

Gruß jodel32
Bitte warten ..
Mitglied: 114757
19.01.2014 um 18:05 Uhr
Zitat von colinardo:
Hinweis: An die Performance-Counter-Strings kommt man mit dem Performance Monitor von Windows perfmon.msc heran.
Hallo Uwe, ich bin's nochmal
wo im Performance Monitor finde ich die Bezeichnungen für die Counter ? ich habe gesucht habe aber leider nichts gefunden
Danke für deine Hilfe

Gruß jodel32
Bitte warten ..
Mitglied: colinardo
LÖSUNG 19.01.2014, aktualisiert um 18:17 Uhr
Hallo jodel32,
du findest die Bezeichnung wenn du einen Counter zur Liste hinzufügst, und und dann mit einem Doppelklick auf diesen die Eigenschaften aufrufst. Auf dem Tab Daten steht dann die Bezeichnung

374e2d69b6aee221b854503e2af61ba1 - Klicke auf das Bild, um es zu vergrößern

Diesem String muss natürlich immer der Rechnername vorgestellt werden also z.B.
\\COMPUTERNAME\TCPv4\Aktive Verbindungen
Grüße Uwe
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
gelöst Powershell - Windows Dienste abfragen (3)

Frage von Edaseins zum Thema Batch & Shell ...

Batch & Shell
Powershell - In Textdatei suchen und ersetzen (3)

Frage von Raaja89 zum Thema Batch & Shell ...

Batch & Shell
gelöst PowerShell Domain Join (2)

Frage von Patrick-IT zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...