crontab 不起作用,我完全不知道为什么。我有一个简单的 Python 脚本,当我从终端运行文件时,我试图每分钟运行一次,它运行正常。
from datetime import datetime
file = "log.txt"
with open(file,"a") as f:
f.write(f"{datetime.now()}\n")
我的 crontab 有以下行。
* * * * * /usr/bin/python3 /home/alex/Documents/GitHub/cron_tester.py
我也试过
*/1 * * * * /usr/bin/python3 /home/alex/Documents/GitHub/cron_tester.py
我尝试重新启动 crontab,尝试更改 python 脚本的 chmod,然后使用另一个发行版重新安装 Linux - 但都不起作用 ^))
Cron shows it's working and active
alex@alex:/usr/bin$ service cron status
● cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: >
Active: active (running) since Mon 2022-09-26 21:16:17 EDT; 25min ago
Docs: man:cron(8)
Main PID: 65102 (cron)
Tasks: 1 (limit: 4564)
Memory: 384.0K
CPU: 1.694s
CGroup: /system.slice/cron.service
└─65102 /usr/sbin/cron -f -P
答案1
Crontab 问题通常由使用相对路径引起。尝试file = "/home/alex/Documents/GitHub/log.txt"
答案2
我在我的机器上试过了,运行良好。尝试将这两行添加到 crontab 的顶部。
SHELL=/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin