(Get-Date)-(gcim Win32_OperatingSystem).LastBootUpTime - uptime w Windows PowerShellu
tty1 · powershell
PS> (Get-Date)-(gcim Win32_OperatingSystem).LastBootUpTime
#PowerShell#RedTeam#BlueTeam#Recon
W PowerShellu 6.0 został wprowadzony cmdlet Get-Uptime, który wyświetla ile czasu upłynęło od ostatniego uruchomienia komputera. W Windows PowerShellu (a więc w wersji 5.1) ten cmdlet nie istnieje, natomiast powyższy oneliner pozwala się bez niego obejść. Wykorzystujemy tutaj cmdlet Get-CimInstance (alias gcim), by pobrać informacje o systemie dostarczane przez klasę WMI Win32_OperatingSystem.
W wyniku jego działania, moglibyśmy otrzymać następujący wynik:
PS C:\Users\drg> (Get-Date)-(gcim Win32_OperatingSystem).LastBootUpTime
Days : 5
Hours : 0
Minutes : 43
Seconds : 20
Milliseconds : 504
Ticks : 4346005046283
ToalDays : 5,03009843319792
TotalHours : 120,72236239675
TotalMinutes : 7243,341743805
TotalSeconds : 434600,5046283
TotalMilliseconds : 434600504,6283
Rzutując całość na typ [string], otrzymamy nieco bardziej zwięzły wynik:
PS C:\Users\drg> [string]((Get-Date)-(gcim Win32_OperatingSystem).LastBootUpTime)
5.00:49:05.0190669
Przydatne linki
▸
learn.microsoft.com/en-us/windows/win32/cimwin32prov/win32-operatingsystem
dokumentacja klasy Win32_OperatingSystem
web ↗
▸
learn.microsoft.com/en-us/powershell/module/cimcmdlets/get-ciminstance
dokumentacja cmdleta Get-CimInstance
web ↗
▸
learn.microsoft.com/en-us/windows/win32/wmisdk/common-information-model
informacje na temat CIM (Common Information Model)
web ↗