cronjob未在raspberry zero上运行

2024-09-28 17:02:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我在树莓零上定义了一个cronjob。我到处找,它好像在跑,但什么也没做

这是cronjob条目(取自crontab-l,所以我确信它在那里)

* * * * * python3 /home/pi/iMon/speedtest.py > /home/pi/iMon/speedtest.txt 2>&1

我已将其设置为每分钟运行一次以进行调试。此外,我正在将输出传输到一个.txt文件,以捕获来自cron的任何输出,但是.txt文件仍然是空的

speedtest.py脚本有一行代码生成输出:

print('Start speedtest = speedtest-cli --simple')

当我手动运行时,它会写入.txt文件。当cron这样做时,不会发生任何事情

py是一个python脚本,它运行speedtest cli来检查ping、下载和上载时间

当我手动运行脚本(我从crontab条目复制了命令)并将结果写入同一目录中的speedtest.csv时,脚本运行没有问题。然而,当cron试图运行这个脚本时,出现了一些问题

cronjob似乎正在运行,我可以通过tail命令看到它:

pi@iMon:~/iMon $ tail /var/log/syslog
Dec  6 13:48:01 iMon CRON[6562]: (pi) CMD (python3 /home/pi/iMon/speedtest.py >    
/home/pi/iMon/speedtest.txt 2>&1)
Dec  6 13:49:01 iMon CRON[6704]: (pi) CMD (python3 /home/pi/iMon/speedtest.py > 
/home/pi/iMon/speedtest.txt 2>&1)
Dec  6 13:50:01 iMon CRON[6852]: (pi) CMD (python3 /home/pi/iMon/speedtest.py > 
/home/pi/iMon/speedtest.txt 2>&1)
Dec  6 13:51:01 iMon CRON[6989]: (pi) CMD (python3 /home/pi/iMon/speedtest.py > 
/home/pi/iMon/speedtest.txt 2>&1)
Dec  6 13:52:02 iMon CRON[7126]: (pi) CMD (python3 /home/pi/iMon/speedtest.py > 
/home/pi/iMon/speedtest.txt 2>&1)
Dec  6 13:53:01 iMon CRON[7263]: (pi) CMD (python3 /home/pi/iMon/speedtest.py > 
/home/pi/iMon/speedtest.txt 2>&1)
Dec  6 13:54:01 iMon CRON[7400]: (pi) CMD (python3 /home/pi/iMon/speedtest.py > 
/home/pi/iMon/speedtest.txt 2>&1)
Dec  6 13:55:01 iMon CRON[7536]: (pi) CMD (python3 /home/pi/iMon/speedtest.py > 
/home/pi/iMon/speedtest.txt 2>&1)
Dec  6 13:56:01 iMon CRON[7672]: (pi) CMD (python3 /home/pi/iMon/speedtest.py > 
/home/pi/iMon/speedtest.txt 2>&1)

知道我遗漏了什么或忽略了什么吗

第一次评论后更新:

我执行了以下命令来查找python3的路径:

which python3

tail命令显示cronjob每分钟都被实例化一次,但是脚本实际上并没有运行,因为没有更新任何文件

pi@iMon:~/iMon $ tail /var/log/syslog
Dec  6 18:31:54 iMon systemd[1]: Started Session c12 of user pi.
Dec  6 18:32:01 iMon cron[252]: (pi) RELOAD (crontabs/pi)
Dec  6 18:32:01 iMon CRON[4246]: (pi) CMD (/usr/bin/python3 /home/pi/iMon/speedtest.py > /home/pi/iMon/speedtest.txt 2>&1)
Dec  6 18:32:43 iMon crontab[4384]: (root) BEGIN EDIT (root)
Dec  6 18:32:49 iMon crontab[4384]: (root) END EDIT (root)
Dec  6 18:33:01 iMon CRON[4402]: (pi) CMD (/usr/bin/python3 /home/pi/iMon/speedtest.py > /home/pi/iMon/speedtest.txt 2>&1)
Dec  6 18:33:11 iMon systemd[1]: session-c12.scope: Succeeded.
Dec  6 18:34:01 iMon CRON[4545]: (pi) CMD (/usr/bin/python3 /home/pi/iMon/speedtest.py > /home/pi/iMon/speedtest.txt 2>&1)
Dec  6 18:35:01 iMon CRON[4685]: (pi) CMD (/usr/bin/python3 /home/pi/iMon/speedtest.py > /home/pi/iMon/speedtest.txt 2>&1)
Dec  6 18:36:01 iMon CRON[4844]: (pi) CMD (/usr/bin/python3 /home/pi/iMon/speedtest.py > /home/pi/iMon/speedtest.txt 2>&1)

有什么想法吗

谢谢


Tags: pytxt脚本cmdhomebinusrpi
1条回答
网友
1楼 · 发布于 2024-09-28 17:02:21

感谢Roadowl的提示,我可以找到以下问题:

  1. .py脚本需要写入/home/pi/iMon/speedtest.csv(具有完整路径),而不是speedtest.csv(没有路径)

  2. cron命令应为(debug-每分钟):

            • /usr/bin/python3/home/pi/iMon/speedtest.py

根据文档,最后一个不需要,但在其他情况下不起作用

相关问题 更多 >