Windows任务计划程序,10个让你省下一半重复操作的用法
原创
这里至少还有鱼
这里至少还有鱼
老李的信息化自留地
2026年6月6日%2011:21
山东
在小说阅读器读本章
去阅读
很多人估计都知道任务计划程序(Task%20Scheduler)这个东西,但从没认真用过它。
打开过一次,看了眼那堆树形目录,关掉了。
我之前也是这样。直到有一天,我需要每天定时清一个临时文件夹,找了一圈第三方工具,觉得装个软件就为干这一件事太蠢了,才想起来翻任务计划程序——然后就一直用到现在,再没想过去找别的。
它本质上是Windows内置的自动化引擎。不需要写代码,不需要装任何东西,开机就在跑。
下面10个用法,从最简单到稍微进阶,你按需选。
1.%20定时清理临时文件,再也不用手动del
临时文件夹里的垃圾不会自己消失。很多人会在磁盘快满的时候才想起来清,但其实完全可以自动化。
操作步骤:
- Win+R%20输入
taskschd.msc打开任务计划程序 - 右侧点「创建基本任务」
- 名称写「清理临时文件」,触发器选「每周」,时间设周日凌晨3点
- 操作选「启动程序」,程序填:
cmd.exe - 参数填:
/c%20del%20/q%20/f%20/s%20%TEMP%\\*
这条命令会静默清空当前用户的 %TEMP% 目录。你睡觉,它干活。
2.%20每天早上9点自动打开你必用的软件
每天开机手动点一遍浏览器、Outlook、内网OA……这个动作一年下来要浪费多少时间?
操作步骤:
- 打开任务计划程序,右侧点「创建基本任务」
- 名称填「早间启动%20-%20Outlook」
- 触发器选「每天」,时间设%2009:00
- 操作选「启动程序」
- 程序填软件完整路径,比如:
C:\\Program%20Files\\Microsoft%20Office\\root\\Office16\\OUTLOOK.EXE - 「完成」
想同时启动多个软件:先新建一个 morning_start.bat,里面写:
start%20\"\"%20\"C:\\Program%20Files\\Google\\Chrome\\Application\\chrome.exe\"
start%20\"\"%20\"C:\\Program%20Files\\Microsoft%20Office\\root\\Office16\\OUTLOOK.EXE\"
然后任务计划程序里程序路径填这个bat文件的路径,一个任务搞定所有启动。
小细节: 「常规」选项卡里勾选「只在用户登录后运行」,否则锁屏状态下软件窗口弹不出来。
3.%20网络断了自动重连
家里或公司某些网络会偶尔断,必须手动禁用再启用才能恢复。用事件触发可以自动处理。
先准备脚本(存成%20reconnect.bat):
netsh%20interface%20set%20interface%20\"以太网\"%20disabled
timeout%20/t%203
netsh%20interface%20set%20interface%20\"以太网\"%20enabled
网卡名在「网络连接」(ncpa.cpl)里看,改成你实际的名称。
操作步骤:
- 右侧点「创建任务」(注意不是「创建基本任务」,功能更全)
- 名称填「网络断线自动重连」
- 「触发器」选项卡%20→%20新建%20→%20开始任务选「发生事件时」
- 设置选「自定义」→「新建事件筛选器」:
- 日志:
System - 事件来源:
Dhcp - 事件ID:
1001
- 「操作」选项卡%20→%20新建%20→%20程序填bat文件路径
- 「常规」选项卡%20→%20勾选「以最高权限运行」(改网卡需要管理员权限)
4.%20定时备份重要文件夹到另一块盘
Robocopy是Windows内置的文件同步工具,做增量备份比很多第三方软件都稳。
先准备脚本(存成%20backup.bat):
robocopy%20\"D:\\工作文档\"%20\"E:\\备份\\工作文档\"%20/MIR%20/R:3%20/W:5%20/LOG+:E:\\备份\\log.txt
/MIR
镜像同步,目标完全跟源保持一致
*%20/R:3
失败最多重试3次,/W:5 每次等5秒
*%20/LOG+
追加写日志,不覆盖,方便查历史
操作步骤:
- 创建任务,名称「每日文件备份」
- 触发器%20→%20新建:每天,时间选%2002:00
- 「条件」选项卡%20→%20勾选「只在计算机使用交流电源时启动」(笔记本防止耗电)
- 操作%20→%20程序填bat文件完整路径
- 「设置」选项卡%20→%20勾选「如果任务运行超过以下时间则停止」,设2小时,防止意外卡死
5.%20开机自动运行脚本,但只在接了某块硬盘时
插着外接盘才备份,没插就跳过,不报错不打扰。
脚本开头加这段(存成%20backup\_ext.bat):
@echo%20off
if%20not%20exist%20\"F:\\\"%20(
%20 %20echo%20%date%%20%time%%20外接盘未连接,跳过备份%20>>%20C:\\logs\\backup_skip.log
%20 %20exit%20/b
)
echo%20%date%%20%time%%20开始备份%20>>%20C:\\logs\\backup_skip.log
robocopy%20\"D:\\重要资料\"%20\"F:\\备份\"%20/MIR%20/R:2%20/W:3
操作步骤:
- 创建任务,触发器选「启动时」
- 操作填bat文件路径
- 「常规」选项卡%20→%20勾选「以最高权限运行」
- 「设置」→%20勾选「允许按需运行任务」,方便手动测试
日志文件会记录每次是跳过了还是真的跑了备份,出问题有据可查。
6.%20让电脑每周自动重启一次
服务器或长期不关机的值班电脑,定期重启能清掉内存泄漏和僵尸进程。
操作步骤:
- 创建任务,名称「每周定时重启」
- 触发器%20→%20新建:每周,勾选「星期日」,时间%2023:30
- 操作%20→%20程序填:
shutdown.exe,参数填:/r%20/t%2060%20/c%20\"系统将在60秒后重启,请保存工作\" - 「常规」→%20勾选「以最高权限运行」(重启需要管理员权限)
- 「设置」→%20勾选「如果错过了计划时间,尽快启动」(防止关机状态下错过)
/t%2060 是60秒倒计时,期间任何在电脑前的人都能看到提示。想取消可以在命令行跑 shutdown%20/a。
7.%20定时截图留存系统运行状态
运维场景里有时需要记录某个时间点系统的状态,备查或存证。
先准备PowerShell脚本(存成%20screenshot.ps1):
powershell
复制
Add-Type%20-AssemblyName%20System.Windows.Forms
Add-Type%20-AssemblyName%20System.Drawing
$screen%20=%20[System.Windows.Forms.Screen]::PrimaryScreen.Bounds
$bmp%20=%20New-Object%20System.Drawing.Bitmap%20$screen.Width,%20$screen.Height
$g%20=%20[System.Drawing.Graphics]::FromImage($bmp)
$g.CopyFromScreen($screen.Location,%20[System.Drawing.Point]::Empty,%20$screen.Size)
$folder%20=%20\"D:\\截图记录\"
if%20(-not%20(Test-Path%20$folder))%20{%20New-Item%20-ItemType%20Directory%20-Path%20$folder%20|%20Out-Null%20}
$bmp.Save(\"$folder\\$(Get-Date%20-Format%20'yyyyMMdd_HHmmss').png\")
$g.Dispose(); $bmp.Dispose()
操作步骤:
- 创建任务,触发器设每小时(或按需调整频率)
- 操作 → 程序:
powershell.exe - 参数:
-ExecutionPolicy Bypass -WindowStyle Hidden -File \"D:\\scripts\\screenshot.ps1\" - 「常规」→「配置」下拉选你的Windows版本,勾选「以最高权限运行」
-WindowStyle Hidden 让PowerShell窗口不弹出来,后台静默截图。
8. 定时把本机状态报告发到邮箱
对需要远程监控自己机器的人很实用,每天一封状态邮件,CPU/内存/磁盘一目了然。
先准备PowerShell脚本(存成 status\_report.ps1):
powershell
复制
操作步骤:
- 创建任务,触发器:每天 08:00
- 操作 → 程序:
powershell.exe,参数:-ExecutionPolicy Bypass -WindowStyle Hidden -File \"D:\\scripts\\status_report.ps1\" - 「条件」→ 勾选「只在网络连接可用时启动任务」,防止断网时发送失败
QQ邮箱需要在设置里开启SMTP,并使用授权码而不是登录密码。
9. 特定程序崩溃后自动把它拉起来
服务器上进程崩了没人发现,过了几小时才被用户投诉——这种事可以用事件触发来兜底。
操作步骤:
- 创建任务,名称「监控XXX进程崩溃」
- 触发器 → 新建 → 「发生事件时」→「自定义」→「新建事件筛选器」:
- 日志:
Application - 事件来源:
Application Error - 事件ID:
1000(应用程序崩溃的标准事件ID)
- 如需精确匹配某个进程,点「XML」选项卡,修改筛选器加上进程名限定
- 操作 → 程序填你要重启的程序完整路径
- 「设置」→ 勾选「如果任务已运行,则应用以下规则」选「请勿启动新实例」,防止崩溃循环触发多次重启
比\"开机启动\"更精确——只有在崩溃事件发生后才触发,不会无限重启。
10. 到点自动锁屏,别让你的电脑裸奔
离开工位忘锁屏是个安全隐患。设个任务,超过下班时间还没锁,自动锁。
操作步骤:
- 创建任务,名称「下班自动锁屏」
- 触发器 → 新建:每天,时间 18:30
- 操作 → 程序:
rundll32.exe,参数:user32.dll,LockWorkStation - 「条件」选项卡 → 把「只在计算机空闲时启动」取消勾选,确保不管在不在用都执行
想做得更灵活:触发器里选「空闲」,配合「条件」选项卡里的「计算机空闲X分钟后运行」,可以改成「空闲15分钟就锁」,比固定时间更实用。
用好这一个工具,能省多少时间?
说真的,上面10条里,只要你落地3-4条,一年省下来的重复操作时间肯定超过20小时。更重要的是,那种“这件事一定会做、不会遗漏”的确定感,是第三方工具给不了的——因为任务计划程序是Windows系统级的,只要电脑开着,它就跑着。
下一篇我打算写WSL2的实用配置,把Linux工具引进Windows开发环境,感兴趣的可以先关注着。
如果这篇对你有用,欢迎转发给同事或收藏备查。
每周都会更新类似的IT效率工具干货,关注公众号不迷路。
↓ 扫码关注,下篇更新第一时间收到
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论