目录

macOS 定时任务的实现:crontab

目录

macOS(Linux) 定时任务的实现:crontab

任务内容的格式:f1 f2 f3 f4 f5 executable_program >/dev/null 2>&1

前面五个参数表示时间:

参数 含义 范围
f1 Minute 0-59
f2 Hour 0-23
f3 day of Month 1-31
f4 Month 1-12
f5 day of Week 0-6,星期天为0

后面的是输出重定向:

  • 2 错误输出 (stderr)
  • 1 标准输出 (stdout)
  • & 重定向到文件描述符,必须在文件描述符数字之前加 &(也叫重定向绑定)
crontab -l 
crontab -r
crontab file

在 config/crontab 目录下建立 rclone 任务文件,每天下午三点运行 rclone.sh 脚本,并将输出重定向到 rclone.log。

/Users/yuhanliu/Downloads/rclone-v1.57.0-osx-amd64/rclone sync /Users/yuhanliu/Documents/yuhan/sites/mongo onedrive-lyh:/backup/mongo
docker start my-mongo
0 15 * * * /Users/yuhanliu/Documents/yuhan/config/crontab/rclone-onedrive-lyh.sh> /Users/yuhanliu/Documents/yuhan/config/crontab/rclone-onedrive-lyh.log 2>&1
cd /Users/yuhanliu/Documents/yuhan/config/crontab
crontab rclone-onedrive-lyh
crontab -l

{
  "related_work": [
    {
      "name": "crontab 中的命令需要重定向输出",
      "type": "forum",
      "url": "https://learnku.com/articles/7414/the-commands-in-the-crontab-need-to-redirect-the-output"
    },
    {
      "name": "Linux crontab 命令",
      "type": "runoob",
      "url": "https://www.runoob.com/linux/linux-comm-crontab.html"
    }
  ]
}