核心命令:schtasks
schtasks
是Windows系统自带的命令行工具,用于创建、修改、删除或查询计划任务。必须以管理员身份运行cmd(右键点击“命令提示符”选择“以管理员身份运行”)。
创建定时任务
基础语法
schtasks /create /tn "任务名称" /tr "执行程序路径" /sc 频率 /mo 间隔 /st 开始时间 /sd 开始日期
- 关键参数:
/tn
:任务名称(唯一标识,如"MyTask"
)。/tr
:要运行的程序路径(如"C:\Scripts\backup.bat"
)。/sc
:频率(daily
(每天)、weekly
(每周)、monthly
(每月)、once
(一次)等)。/mo
:间隔(如每2天:/mo 2
)。/st
:开始时间(格式HH:mm
,如08:00
)。/sd
:开始日期(格式MM/DD/YYYY
,如2025/10/01
)。
示例场景
-
每天定时启动程序
每天上午9点运行备份脚本:schtasks /create /tn "DailyBackup" /tr "C:\Scripts\backup.bat" /sc daily /st 09:00
-
每周特定日期执行
每周一和周五下午6点清理日志:schtasks /create /tn "WeeklyClean" /tr "C:\clean_logs.exe" /sc weekly /d MON,FRI /st 18:00
-
每月1号运行任务
每月1日上午7点启动报表生成:schtasks /create /tn "MonthlyReport" /tr "D:\reports\generate.exe" /sc monthly /mo 1 /st 07:00
管理定时任务
查看所有任务
schtasks /query
查看详细信息(格式化为列表):
schtasks /query /fo list
删除任务
schtasks /delete /tn "任务名称" /f
/f
:强制删除(无需确认)。
示例:schtasks /delete /tn "DailyBackup" /f
修改任务属性
schtasks /change /tn "任务名称" /参数 新值
- 示例:调整任务开始时间
schtasks /change /tn "DailyBackup" /st 10:00
高级用法
设置重复间隔
每30分钟运行一次Python脚本(持续24小时):
schtasks /create /tn "Monitor" /tr "python C:\monitor.py" /sc minute /mo 30 /du 24:00
指定用户权限
添加/ru
(用户名)和/rp
(密码)参数:
schtasks /create /tn "AdminTask" /tr "notepad.exe" /sc daily /st 12:00 /ru Administrator /rp password
定时关机
每天23点自动关机:
schtasks /create /tn "NightShutdown" /tr "shutdown /s /t 0" /sc daily /st 23:00
注意事项
- 管理员权限:
所有操作需在管理员cmd中执行,否则会提示“拒绝访问”。 - 路径规范:
程序路径含空格时需用双引号包裹(如"C:\Program Files\app.exe"
)。 - 时间格式:
24小时制(14:30
代表下午2:30),日期格式为MM/DD/YYYY
。 - 任务冲突:
任务名称不可重复,创建前用schtasks /query
确认。 - 安全性:
避免在/tr
中直接使用高危命令(如格式化磁盘),防止误操作。
替代方案
- 图形界面:
可通过taskschd.msc
打开“任务计划程序”可视化操作。 - PowerShell:
使用New-ScheduledTask
命令(功能更强大,适合复杂任务)。
schtasks
命令是Windows定时任务的底层核心工具,适合批量部署、远程管理或脚本集成,通过精确控制时间、频率和权限,可大幅提升系统自动化效率,初次使用建议先用简单任务测试,再逐步应用到关键场景。
引用说明基于Microsoft官方文档《schtasks 命令参考》及Windows 10/11系统实践验证,确保方法安全可靠。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6085.html