用 Get-CimInstance 查看系统运行时间和上次开机时间

在 PowerShell 中通过 Get-CimInstance 查询 Win32_OperatingSystem 获取开机时长,替代已弃用的 wmic 命令。

WindowsWMIPowerShell运行时间低风险
在 PowerShell 运行 Get-CimInstance Win32_OperatingSystem,用当前时间减去 LastBootUpTime 即得开机时长。

01命令

命令
$ $os = Get-CimInstance Win32_OperatingSystem
$os.LastBootUpTime
(Get-Date) - $os.LastBootUpTime

02作用说明

wmic os get lastbootuptime 在 Windows 10 上还能用,但已被微软标记为弃用,Windows 11 24H2+ 已默认移除。Get-CimInstance 返回的 LastBootUpTime 是真正的 DateTime 对象,直接用 `(Get-Date) - $os.LastBootUpTime` 做减法就能得到 TimeSpan,可自由格式化。同一个类还暴露 TotalVisibleMemorySize、NumberOfProcesses 等属性,可一次性拿到系统快照。

03风险

风险低风险

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • Get-CimInstance - SS64
    SS64 · technical · 2026-09-17
    依据: Get-CimInstance retrieves WMI/CIM class instances and supports date conversion of CIM timestamps.
  • Win32_OperatingSystem class
    Microsoft Learn · vendor-doc · 2026-09-17
    依据: Win32_OperatingSystem exposes LastBootUpTime and other OS properties queryable via Get-CimInstance.

最后验证: 2026-09-17 · 分类: 系统与设置

06相关方案