如何查询Windows中已计划的关机/重启任务的剩余时长、执行时间及活跃状态
如何查询Windows中已计划的关机/重启任务的剩余时长、执行时间及活跃状态
好问题!我之前也遇到过这个需求,Windows确实内置了方法来查询这些信息,不需要第三方工具,下面给你几种实用的方案:
一、PowerShell 方法(推荐,直观易用)
这是最方便的方式,不仅能看到执行时间,还能直接计算剩余时长:
- 快速查看是否有活跃计划及执行时间
打开PowerShell,运行以下命令:
Get-CimInstance -ClassName Win32_OperatingSystem | Select-Object ShutDownTime
- 如果有正在计划的关机/重启,会返回类似
2024-05-20 15:30:00的具体时间; - 如果没有活跃计划,返回的
ShutDownTime会是空值。
- 一键查看剩余时长+执行时间
直接运行这段脚本,会自动判断并输出清晰的结果:
$systemInfo = Get-CimInstance Win32_OperatingSystem if ($systemInfo.ShutDownTime) { $remainingTime = $systemInfo.ShutDownTime - (Get-Date) Write-Host "当前有活跃的关机/重启计划:" Write-Host "执行时间:$($systemInfo.ShutDownTime.ToString('yyyy-MM-dd HH:mm:ss'))" Write-Host "剩余时间:$($remainingTime.Hours)小时 $($remainingTime.Minutes)分钟 $($remainingTime.Seconds)秒" } else { Write-Host "当前没有活跃的关机/重启计划" }
二、CMD 命令行方法
如果你习惯用命令提示符,也可以用wmic命令查询:
wmic os get shutdowntime /value
- 有计划时会返回类似
ShutDownTime=20240520153000.000000+480的字符串,格式是YYYYMMDDHHMMSS.ffffff+时区偏移,需要手动转换为可读时间; - 无计划时会显示
ShutDownTime=(空值)。
小提示
以上方法仅针对用 shutdown /r /f /t N 这类临时即时计划的关机/重启任务。如果你是通过「任务计划程序」创建的定时关机任务,需要用 schtasks /query 命令或者直接打开任务计划程序来查看任务状态和执行时间。
备注:内容来源于stack exchange,提问作者mojo




