跳转到内容

计划任务

计划任务用于设置定时执行的任务,如定时备份、定时执行脚本等。

任务列表

进入 任务 页面,默认显示计划任务列表。

计划任务

列表显示以下信息:

  • 任务名称:任务名称
  • 任务类型:执行脚本/备份数据/日志切割/访问 URL/同步时间
  • 已启用:是否启用
  • 任务周期:执行周期
  • 创建时间:创建时间
  • 最后更新:最后修改时间
  • 操作:运行、查看日志、编辑、删除

创建任务

点击 创建任务 按钮创建新的计划任务。

任务类型

类型说明
执行脚本执行一个 Shell 脚本
备份数据定时备份网站、MySQL 数据库、PostgreSQL 数据库或目录到选定的存储
日志切割定时切割网站或容器日志
访问 URL向指定 URL 发送 HTTP 请求(GET/POST/PUT/DELETE/PATCH/HEAD),可选配置请求头、请求体、超时时间、重试次数以及忽略证书
同步时间同步服务器时间

对于备份数据日志切割任务,你还可以设置保留数量,仅保留最近的备份/归档并自动清理较旧的文件,同时选择目标存储

进程锁

启用进程锁可防止重复执行:如果上一次运行仍在进行中,则跳过本次运行。

执行周期

支持多种周期设置:

  • 每秒:每秒执行一次
  • 每 N 秒:每隔 N 秒执行一次
  • 每分钟:每分钟执行一次
  • 每 N 分钟:每隔 N 分钟执行一次
  • 每 N 小时:每隔 N 小时执行一次
  • 每 N 天:每隔 N 天执行一次
  • 每小时:每小时在指定分钟执行
  • 每天:每天在指定时间执行
  • 每周:每周在指定的星期和时间执行
  • 每月:每月在指定的日期和时间执行
  • 每年:每年在指定的月份、日期和时间执行
  • 重启后:服务器重启后执行一次(@reboot
  • 自定义:使用 Cron 表达式

Cron 表达式

Cron 表达式格式:分 时 日 月 周

*    *    *    *    *
│    │    │    │    │
│    │    │    │    └── 周几 (0-7, 0和7都是周日)
│    │    │    └─────── 月份 (1-12)
│    │    └──────────── 日期 (1-31)
│    └───────────────── 小时 (0-23)
└────────────────────── 分钟 (0-59)

同时支持六段式表达式以实现秒级调度,此时首段为秒(秒 分 时 日 月 周)。 例如,*/10 * * * * * 表示每 10 秒执行一次。

常用示例:

表达式说明
0 2 * * *每天凌晨 2 点
0 */6 * * *每 6 小时
0 0 * * 0每周日凌晨
0 0 1 * *每月 1 号凌晨
*/5 * * * *每 5 分钟

不会写? 直接找个 AI 描述清楚需求让它帮你生成一个。

Shell 任务示例

清理临时文件

bash
find /tmp -type f -mtime +7 -delete

重启服务

bash
systemctl restart nginx

同步时间

bash
ntpdate ntp.aliyun.com

TIP

对于服务器时间同步,你不再需要手写 Shell 命令。 请改用专门的同步时间任务类型,它会执行面板自带的 acepanel sync-time 命令,并根据面板中配置的时间服务器进行同步。

任务操作

启用/禁用

通过开关控制任务是否启用。 禁用的任务不会执行。

立即执行

点击 运行 按钮可以立即执行任务,不等待计划时间。

查看日志

点击 日志 按钮查看任务的执行日志。

编辑任务

点击 编辑 按钮修改任务配置。

删除任务

点击 删除 按钮删除任务。

批量删除

使用列表中的复选框选择多个任务,然后点击页面顶部的删除按钮,即可一次性删除所有选中的任务。

面板任务

任务页面有两个标签页:计划任务(即上文介绍的 cron 列表)和面板任务。 切换到面板任务标签页可查看后台任务队列,它记录了由面板触发的长时间运行操作(例如备份、恢复以及其他排队任务)。

列表显示以下信息:

  • 任务名称:任务名称
  • 状态:等待中 / 运行中 / 已完成 / 失败
  • 创建时间:任务的创建时间
  • 完成时间:任务的完成时间
  • 操作:查看日志、删除

任务日志在任务开始运行后即可查看,任务仅在结束后(状态为已完成或失败)才能删除;等待中和运行中的任务无法删除。

TIP

如果任务日志加载失败,请禁用浏览器中的任何广告拦截插件。

注意事项

  1. 任务执行时间基于服务器时区
  2. 长时间运行的任务可能会影响下一次执行;启用进程锁可跳过重叠的运行
  3. 定期通过日志按钮检查任务执行状态