13. März 2019 Aleksej Kusnir

PowerShell Betriebszeit (UpTime) ausgeben

Sie möchten mit PowerShell ermitteln, wie lange Ihr Computer oder ein Remocomputer bereits läuft? 

In diesem Blogpost schauen wir uns gemeinsam die Varianten an, die Sie mit PowerShell nutzen können, um die Laufzeit Ihrer Systeme zu ermitteln.

Uptime Ihres lokalen Systems ermitteln 

Die schnellste Methode die Laufzeit Ihres eigenen Systems zu ermitteln ist über den Taskmanager. 

Der Nachteil ist, Sie müssen sich auf dem System anmelden und die Laufzeit überprüfen. 

PowerShell Uptime über die Eventlogs ermitteln 

Jedes Mal, wenn das Windows Betriebssystem herunterfährt oder startet, wird ein Event im Eventlog gespeichert. 

Die Event ID: 6005 

Protokolliert den Start des Systems 

$LastBootUpTime=Get-WinEvent -ProviderName eventlog | Where-Object {$_.Id -eq 6005} | Select-Object TimeCreated -First 1 

$timenow=Get-Date 

$Uptime = New-TimeSpan -Start $LastBootUpTime.TimeCreated.Date -End $timenow 

$Uptime

https://www.itprotoday.com/devops-and-software-development/q-how-can-i-get-just-first-entry-list-entries

Wenn Sie die Updates eines Remotecomputers ermitteln möchte, dann nutzen Sie zusätzlich den  -Computername Parameter.

Get-WinEvent -ProviderName eventlog -Computername "Hostname" | Where-Object {$_.Id -eq 6005} | Select-Object -First 1

Uptime mit WMI bzw. WMIC ermitteln 

Sie können auch die WMIC Schnittstelle nutzen, um die Laufzeit eines Systems zu ermitteln. 

(Get-CimInstance -ClassName Win32_OperatingSystem).LastBootUpTime 

Fazit 

In diesem Blogpost haben Sie gelernt, wie Sie die Laufzeit Ihrer Windows System durch verschiedene Methoden ermitteln. 

Sie wissen nun, Wie Sie die Uptime Ihrer Remotcomputer von Ihrem Arbeitsplatz aus mit PowerShell abfragen können. 

Ich hoffe ich konnte Ihnen weiterhelfen und wünsche Ihnen viel Spaß beim Testen. 

Aleksej Kusnir