SSF0SSF0
首页
前端
  • Node
  • Go
  • Python
  • MySql
  • Bash
  • Git
  • Docker
  • VuePress
  • CI/CD
  • 服务器
  • 网站
  • 学习资料
  • 软件
  • 开源项目
Timeline
Github
标签
分类
首页
前端
  • Node
  • Go
  • Python
  • MySql
  • Bash
  • Git
  • Docker
  • VuePress
  • CI/CD
  • 服务器
  • 网站
  • 学习资料
  • 软件
  • 开源项目
Timeline
Github
标签
分类
  • Bash

    • Bash 获取路径在不同类型电脑的区别
  • Git

    • Git 使用 ssh 与 https 的区别
    • Git 回滚、重置与变基
    • 文件名大小写发生变化的坑
    • Git 提交信息规范解读与实践指南
    • Git 历史邮箱统一
    • Git 拉取 GitHub 失败、配置代理及 DNS 问题排查总结
    • Git 实战教程:如何使用 Cherry-pick 或直接覆盖让两个分支同步公共功能
  • Docker

    • Docker 命令大全
    • nginx 镜像部署静态文件
    • Docker 运行命令说明
    • 使用 node 镜像运行本地项目
    • 挂载和卷的区别
    • Docker 打包多平台镜像
    • Docker 使用 mysql
    • Docker 容器网络访问问题总结
    • Docker 容器绑定ip问题
  • VuePress

    • 使用 VuePress 搭建个人博客概括
  • CI/CD

    • blog 使用 Github-Actions 部署 docker 服务器
    • GitHub Actions项目部署国内服务器文件传输时间优化
  • 服务器

    • 腾讯云使用 ssh 连接服务器(Linux 实例)
    • ssl 证书安装到 docker 服务器
    • 操作系统与架构
    • ssh 连接时长问题
    • Oracle 服务器基础知识
    • OCI 专属网络拓扑图
    • 甲骨文-宝塔面板无法访问问题
    • 甲骨文服务器防火墙问题排查记录
    • 甲骨文重启后宝塔面板无法访问
  • hosts 文件指南
  • Cloudflare DNS与代理
  • 跨平台定时任务设置指南
  • Edge 浏览器连不上代理?一场由插件引发的“夺权”与 v2rayN 的深度探索
  • 二级域名访问异常排查记录
  • 软件走代理时如何抓包
  • JetBrains AI 使用
  • Clash 代理工作原理详解

跨平台定时任务设置指南:Linux 服务器、macOS、Windows 全覆盖

在日常开发或运维中,我们经常需要设置 定时任务 来自动执行脚本,比如定时备份、日志清理、拉取远程仓库、定时推送消息等等。这篇文章将详细介绍如何在 Linux 服务器(通常是 Ubuntu/CentOS 等)、macOS、Windows 三个平台上设置定时任务。

1. Linux 服务器:使用 crontab

Linux 中设置定时任务最常用的方法就是 cron 系统。

查看是否有 crontab

which crontab

如果返回路径(如 /usr/bin/crontab),说明已安装。

编辑定时任务

crontab -e

这是为当前用户编辑任务。打开后,你可以添加类似这样的任务:

0 1 * * * /home/youruser/scripts/backup.sh

意思是:每天凌晨 1 点执行这个脚本。

crontab 时间格式说明:

* * * * * command
- - - - -
| | | | |
| | | | └── 星期几(0-7,0 和 7 都是周日)
| | | └──── 月(1-12)
| | └────── 日(1-31)
| └──────── 时(0-23)
└────────── 分(0-59)

查看已有任务:

crontab -l

删除任务:

crontab -r

2. macOS:同样支持 cron

macOS 是 Unix 系统,默认也支持 crontab,用法与 Linux 基本一致。

crontab -e

macOS 上可能默认使用 vi 编辑器,可以输入 export EDITOR=nano 更换为 nano,更易用。

macOS 也支持更现代的 launchd 系统(通过 .plist 文件定时执行),但对开发者来说,crontab 更方便上手。

3. Windows:使用 Task Scheduler(任务计划程序)

Windows 系统没有 cron,但自带了功能强大的 任务计划程序(Task Scheduler)。

打开方式:

  • Win + R → 输入 taskschd.msc → 回车

  • 或者开始菜单搜索“任务计划程序”

创建任务流程:

  1. 点击“创建基本任务”或“创建任务”

  2. 设置名称和描述

  3. 设置触发时间(每天、每周、登录时等)

  4. 设置操作(启动程序)

示例:运行 .bat 批处理脚本

假设你有个 D:\scripts\update.bat 脚本:

  • 在“操作”中选择“启动程序”

  • 程序路径填:D:\scripts\update.bat

示例:运行 Python 脚本

  • 程序:C:\Python39\python.exe

  • 参数:D:\scripts\sync.py

权限提示

  • 如果任务需要管理员权限(例如访问系统目录),在“创建任务”中的“常规”标签页勾选“使用最高权限运行”。

测试任务:

右键任务 → 选择“运行”,看是否成功。

小结对比:

平台定时任务工具配置方式支持脚本类型
Linuxcrontabcrontab -e.sh, .py, .php 等
macOScrontab 或 launchd同 Linux,或使用 .plist同 Linux
WindowsTask Scheduler图形化操作.bat, .ps1, .py 等

实用建议

  • 所有平台都可以通过“定时 + 脚本”实现自动化。

  • 建议将定时脚本的日志输出保存到文件中方便排查,例如:

/path/to/script.sh >> /var/log/mytask.log 2>&1
  • 复杂定时逻辑建议写成脚本,定时器仅负责调用。
最后更新时间:
贡献者: 何风顺
上一页
Cloudflare DNS与代理
下一页
Edge 浏览器连不上代理?一场由插件引发的“夺权”与 v2rayN 的深度探索