使用 PowerShell 在给定时间重启计算机

使用 PowerShell 在给定时间重启计算机

我正在寻找一种使用 PowerShell ( Restart-Computer) 在给定时间(例如:凌晨 3 点)重启计算机的方法。PS 脚本本身将在用户执行时随机运行,因此无法将脚本安排在凌晨 3 点运行。

我的第一个想法是安排一个任务,在凌晨 3:00(使用 PowerShell)为我执行重启。这New-ScheduledTask在 PowerShell 4.0 中是可能的(我认为)。缺点是我不确定运行此脚本的计算机是否具有 PowerShell 4.0。

是否可以使用 PowerShell 2.0 安排任务,或者是否有其他方法在给定时间重新启动计算机?

谢谢

答案1

你可以跑

shutdown -r -t ([decimal]::round(((Get-Date).AddDays(1).Date.AddHours(3) - (Get-Date)).TotalSeconds))

这将获取脚本运行时间和第二天凌晨 3:00 之间的秒数。然后将结果传递给 shutdown.exe。显然,这是为在午夜之前运行而设计的。

答案2

设置以下内容作为计划任务运行:

C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe Restart-Computer -Force

任务配置

相关内容