You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

编写PowerShell计划任务脚本实现Windows 10 1706自动关机

搞定了!满足需求的Windows计划任务PowerShell脚本

先跟你同步下更新说明:之前的问题参考了Hey, Scripting Guy博客的内容解决了,现在已经把代码调整成完全可用的版本啦。

下面是针对你的需求写的脚本,完美适配Windows 10 1706系统:

# 自定义任务名称和每日执行时间(这里设为18:00,你可以按需修改)
$taskName = "DailyWorkdayShutdown"
$targetTime = "18:00:00"

# 创建任务触发器:周一到周五每天指定时间运行,自动唤醒休眠的电脑
$taskTrigger = New-ScheduledTaskTrigger `
    -Daily -At $targetTime `
    -DaysOfWeek Monday,Tuesday,Wednesday,Thursday,Friday `
    -WakeToRun

# 创建任务操作:执行PowerShell命令实现本地关机
$taskAction = New-ScheduledTaskAction `
    -Execute "powershell.exe" `
    -Argument "-Command Stop-Computer -ComputerName localhost -Force"

# 配置任务核心设置:忽略锁屏状态、允许唤醒、确保权限足够
$taskSettings = New-ScheduledTaskSettingsSet `
    -WakeToRun `
    -IgnoreNewState ` # 忽略用户锁屏状态
    -RunLevel Highest ` # 以最高权限运行,保证关机命令生效
    -StartWhenAvailable ` # 如果错过时间,系统恢复后立即执行
    -AllowStartIfOnBatteries ` # 即使在电池模式也允许启动(可选,可根据需求去掉)

# 注册计划任务
Register-ScheduledTask `
    -TaskName $taskName `
    -Trigger $taskTrigger `
    -Action $taskAction `
    -Settings $taskSettings `
    -Description "工作日每日指定时间自动关机,唤醒休眠电脑,忽略锁屏状态"

关键参数说明

  • 触发规则-DaysOfWeek限定了仅周一到周五运行,-WakeToRun确保电脑处于休眠状态时会被唤醒执行任务
  • 关机命令Stop-Computer -Force强制执行关机,避免被系统弹窗打断
  • 锁屏处理-IgnoreNewState参数让任务完全忽略当前用户是否处于锁屏状态,正常执行
  • 权限保障-RunLevel Highest确保任务拥有足够的系统权限完成关机操作

你只需要修改$targetTime来设置你想要的每日关机时间,修改$taskName自定义任务名称就可以直接用啦!

内容的提问来源于stack exchange,提问作者bajzaadmin

火山引擎 最新活动