in

¿Cómo obtener el tiempo de actividad del sistema con PowerShell?

60 109370 1581658197

Para obtener el tiempo de actividad del sistema Windows con PowerShell, podemos usar el CIM Método de instancia con nombre de clase Win32_OperatingSystem. Una vez que usa la clase mencionada, hay una propiedad llamada LastBootupTime que muestra la fecha de la última vez que se reinició la computadora.

Ejemplo

Get-CimInstance -ClassName Win32_OperatingSystem | Select LastBootUpTime

Producción

LastBootUpTime
--------------
9/29/2020 8:12:08 AM

Si verificamos el tipo de datos de la salida anterior, debería ser DateTime debido al formato de salida.

(Get-CimInstance -ClassName Win32_OperatingSystem).LastBootUpTime.Gettype()

Producción

IsPublic IsSerial Name     BaseType
-------- -------- ----     --------
True     True     DateTime System.ValueType

Necesitamos ahora el tiempo de actividad del sistema en DiasHorasMinutos formato. Por lo tanto, compararemos la diferencia entre la fecha / hora actual con la fecha / hora de inicio.

$bootuptime = (Get-CimInstance -ClassName Win32_OperatingSystem).LastBootUpTime
$CurrentDate = Get-Date
$uptime = $CurrentDate - $bootuptime
$uptime

Producción

Days               : 6
Hours              : 0
Minutes            : 17
Seconds            : 38
Milliseconds       : 301
Ticks              : 5194583016830
TotalDays          : 6.01224886207176
TotalHours         : 144.293972689722
TotalMinutes       : 8657.63836138333
TotalSeconds       : 519458.301683
TotalMilliseconds  : 519458301.683

Desde la salida, podemos decir que el servidor está activo desde 6 días y 17 minutos. También podemos escribir la salida como se muestra a continuación.

Write-Output "Server Uptime --> Days: $($uptime.days), Hours: $($uptime.Hours), Minutes:$($uptime.Minutes)"

Producción

Server Uptime --> Days: 6, Hours: 0, Minutes:17

Para verificar el tiempo de actividad en las computadoras remotas, use –Nombre del computador parámetro en el comando. Por ejemplo,

$servers = "Test1-Win2k12","Test1-Win2k16","ADDC"
$currentdate = Get-Date
foreach($server in $servers){
$Bootuptime = (Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName $server).LastBootUpTime
   $uptime = $currentdate - $Bootuptime
   Write-Output "$server Uptime : $($uptime.Days) Days, $($uptime.Hours) Hours, $($uptime.Minutes) Minutes"
}

Producción

Test1-Win2k12 Uptime : 5 Days, 22 Hours, 50 Minutes
Test1-Win2k16 Uptime : 5 Days, 23 Hours, 12 Minutes
ADDC Uptime : 6 Days, 2 Hours, 9 Minutes

raja

Publicado el 16-oct-2020 09:40:47

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

comment mettre instagram en mode sombre

Cómo poner Instagram en modo oscuro

apple touch icon@2

c # – El patrón de decorador oculta las interfaces de Decoratee