求适配笔记本(插电/电池)的Windows定时睡眠自动唤醒PowerShell脚本
实现Windows设备(含笔记本)睡眠后自动唤醒的PowerShell脚本
当然有,下面是针对笔记本(插电/电池模式均适用)的解决方案,核心是通过计划任务强制唤醒,同时配合系统电源设置调整来规避笔记本的默认限制:
脚本代码
# 设置唤醒延迟时间(示例:30分钟后唤醒,单位为秒) $wakeDelay = 30 * 60 # 计算唤醒触发的具体时间 $triggerTime = (Get-Date).AddSeconds($wakeDelay) # 注册一个用于唤醒的计划任务 Register-ScheduledTask -TaskName "AutoWakeFromSleep" -Action (New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-Command `"`"") -Trigger (New-ScheduledTaskTrigger -Once -At $triggerTime) -Settings (New-ScheduledTaskSettingsSet -WakeToRun $true) -Force # 延迟1秒后让电脑进入睡眠状态 Start-Sleep -Seconds 1 Add-Type -AssemblyName System.Windows.Forms [System.Windows.Forms.Application]::SetSuspendState('Suspend', $false, $false)
关键说明
- 脚本必须以管理员权限运行,否则无法创建计划任务
WakeToRun参数是核心:它会强制系统从睡眠状态唤醒以执行任务,绕过笔记本默认的唤醒限制- 执行后,计划任务会在指定时间触发,即使笔记本处于电池模式也能正常唤醒
配套电源设置调整(必须做)
光靠脚本可能不够,需要修改系统电源选项确保唤醒功能生效:
- 打开「控制面板」→「电源选项」→「更改计划设置」→「更改高级电源设置」
- 展开「睡眠」→「允许使用唤醒定时器」,将「使用电池」和「接通电源」均设置为「启用」
- 展开「USB设置」→「USB选择性暂停设置」,两种电源模式下都设为「禁用」(避免USB设备干扰唤醒)
注意事项
- 电池模式下,如果电量过低,系统可能会自动取消唤醒计划,确保电池电量充足
- 脚本执行后,计划任务会保留在系统中,若不再需要可手动在「任务计划程序」中删除名为
AutoWakeFromSleep的任务
内容的提问来源于stack exchange,提问作者user1912491
相关产品推荐
相关产品推荐

