1. 前言
在上一期的推文 用Airtest获取本地可用设备实现自动启动or关闭应用的小任务 中,我们实现了自动获取可用设备并自动打开所有手机上的网易云音乐APP的小任务。那么今天,我们来看下怎么把这个任务实现成1个定时任务,也就是在无人值守的情况下,让它自动完成这些事情。
今天的教程以 Windows定时任务 为例,先带大家简单体验下定时任务,后面我们还会给大家讲解稍微复杂一点的 Linux下的crontab定时任务 。
2. 准备bat脚本
Windows定时任务支持我们定时运行一些程序/脚本,所以我们可以准备一个bat脚本,来执行上期的任务。
新建一个.txt
文件,在里面编写如下的脚本:
::关闭回显 @echo off title 打开所有手机的云音乐APP ::切换到D盘 D: ::进入D盘的PythonProject目录 cd D:\PythonProject ::执行命令启动所有手机的云音乐APP start "正在打开所有手机的云音乐APP" python main.py start exit 复制代码
保存该文件后,把txt
的后缀名改成bat
,确认即可。
我们来看下该bat
脚本的运行效果:
3. 创建Windows定时任务
① 打开Windows设置,搜索管理工具
② 在管理工具中找到任务计划程序
③ 在任务计划程序中点击创建任务
④ 设置定时任务(配置常规、触发器和操作)
在 常规 中,我们可以配置任务的名称、描述并且勾选使用最高权限运行(防止因权限不够导致部分程序/脚本无法正常运行):
在 触发器 配置中,我们需要新建触发器,设置任务的开始时间,假设说我们这个任务只需要在特定时间执行一次,可以这么设置:
设置完成后点击“确认”保存该触发器。
接下来我们还要在 操作 配置中,新建操作,在这里设置我们需要运行的bat
脚本:
同上,也是设置完成后点击“确认”保存该操作。
最后,在创建任务界面,点击“确认”即可保存该任务,我们可以在任务计划程序库中,找到该定时任务:
4. 定时任务的效果
至此,Windows定时任务就设置完成了,即使在无人值守的情况下,Windows也会按照我们设定的定时任务那样,在规定时间,执行特定的程序/脚本。
效果如下:
5. 小结
Windows定时任务的设置方式非常简单,但在实际工作中,我们很少会直接把任务部署在自己电脑上跑,因为考虑到可能会忘记开机、Windows死机等情况,我们都会把任务部署到服务器上跑。
服务器通常是Linux系统,该系统下有一个叫做crontab
的服务,可以帮助我们实现定时任务,那么下期我们就来看下如何利用这个crontab
服务,来帮助我们实现定时任务吧!