
如果您希望让 Windows 10 电脑在每天或每周的固定时刻(如23:00、19:30)自动关机,则需借助系统内置的计划任务机制触发 shutdown 命令。以下是实现该目标的多种可行方法:
一、使用任务计划程序创建每日固定时间关机任务
任务计划程序可使 shutdown.exe 在无人值守状态下,于指定日期与时间精确触发关机指令,且支持“不管用户是否登录都要运行”,确保锁屏、未登录或服务会话下仍能执行。
1、按下 Win + S 组合键,在搜索栏中输入“任务计划程序”,右键选择“以管理员身份运行”。
2、在右侧操作面板中点击“创建基本任务”,输入名称(如“每日23点关机”)和描述,点击“下一步”。
3、在“触发器”页面选择“每天”,点击“下一步”。
4、设置“开始日期”为当天,“开始时间”为23:00,点击“下一步”。
5、在“操作”页面选择“启动程序”,点击“下一步”。
6、在“程序或脚本”栏中输入:C:\Windows\System32\shutdown.exe;在“添加参数”栏中输入:-s -f -t 0,点击“下一步”。
7、勾选“当点击‘完成’时,打开此任务属性的对话框”,点击“完成”。
8、在弹出的属性窗口中,切换至“常规”选项卡,勾选使用最高权限运行与不管用户是否登录都要运行,取消勾选“只在计算机使用交流电源时才启动此任务”,点击“确定”。
二、使用任务计划程序创建工作日周期性关机任务
该方法适用于仅需在周一至周五执行关机的场景,通过多天触发器设定避免周末误触发,提升任务执行的准确性与可控性。
1、以管理员身份运行“任务计划程序”,点击“创建基本任务”。
2、输入任务名称(如“工作日19:30关机”),点击“下一步”。
3、选择触发器为每周,点击“下一步”。
4、勾选星期一、星期二、星期三、星期四、星期五,设置具体时间为19:30,点击“下一步”。
5、选择操作为“启动程序”,点击“下一步”。
6、在“程序或脚本”栏中输入:shutdown.exe;在“添加参数”栏中输入:-s -f -t 0,点击“下一步”。
7、勾选“当点击‘完成’时,显示此任务属性的对话框”,点击“完成”。
8、在属性窗口的“常规”选项卡中,启用使用最高权限运行和不管用户是否登录都要运行,并勾选不存储密码,点击“确定”。
三、通过“运行”窗口执行带时间点的 shutdown 命令
该方式利用 Windows 运行环境直接解析含时间点的 shutdown 指令,无需命令提示符界面,适合单次、非周期性的固定时刻关机需求,例如“今晚22:00关机”。
1、按下 Win + R 打开“运行”窗口。
2、在输入框中粘贴命令:at 22:00 shutdown -s(表示在系统时间22:00执行关机)。
3、按回车执行,若提示“此命令已成功计划”,则任务注册完成。
4、注意:at 命令依赖 Windows Task Scheduler 服务处于运行状态,且部分新版 Win10 系统默认禁用该功能,需先以管理员身份运行命令提示符,执行 net start schedule 启用服务。
四、创建批处理文件配合计划任务实现灵活定时关机
将 shutdown 命令封装为可传参的 .bat 文件,再将其绑定至任务计划程序,便于复用、修改及集成到其他自动化流程中,同时规避交互式命令行依赖。
1、新建一个文本文档,输入内容:@echo off
shutdown -s -f -t %1。
2、将文件另存为:fixedtime_off.bat,保存类型选“所有文件”,编码选ANSI。
3、在任务计划程序中创建新任务,操作步骤中“程序或脚本”填写该 .bat 文件的完整路径(如 D:\Scripts\fixedtime_off.bat),“添加参数”填写所需秒数(如 0 表示立即关机,或 1800 表示30分钟后)。
4、确保任务属性中启用不管用户是否登录都要运行与使用最高权限运行。
五、使用 PowerShell 脚本注册高权限静默关机任务
PowerShell 提供更底层的任务注册能力,可通过 Register-ScheduledTask 命令创建具备完整权限控制、无图形通知、强制终止进程的关机任务,适用于后台服务环境或需静默执行的场景。
1、以管理员身份运行“Windows PowerShell”。
2、执行以下命令注册每日23:00关机任务:$Action = New-ScheduledTaskAction -Execute "shutdown.exe" -Argument "-s -f -t 0"
$Trigger = New-ScheduledTaskTrigger -Daily -At "23:00"
$Principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount
$Settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -StartWhenAvailable
Register-ScheduledTask "DailyShutdown" -Action $Action -Trigger $Trigger -Principal $Principal -Settings $Settings。
3、执行后系统将返回任务对象信息,表示注册成功。
4、可通过 Get-ScheduledTask "DailyShutdown" 验证任务状态。










