【发布时间】:2020-11-13 07:27:26
【问题描述】:
我有一个从命令行运行的 python 脚本,它执行三件事
1.) 杀死当前正在运行的所有处理程序
2.) 运行一个新的处理程序
3.) 关闭树莓派
从命令行运行此命令时,它可以完美运行。然而,当使用 crontab 调用这个 Python 脚本时,只有第 1 个和第 3 个进程可以正常运行。我想知道的是为什么当我从命令行运行 Python 脚本而不是从 crontab 运行第二个命令(运行新的处理程序)时有效?
这是我的 Python 脚本
import os # Use operating system
import subprocess # Use subprocess calls
from time import sleep # Use sleep
from subprocess import call
os.system('sudo killall java')
sleep(5)
child = subprocess.Popen('sudo processing-java --sketch=/home/pi/Desktop/LaserCannonProcessing/LCshutdown --run', shell=True) #
sleep(15)
call("sudo poweroff", shell = True)
这是我的 crontab
50 20 * * * sudo /usr/bin/python3 /home/pi/Desktop/Shutdown.py
有谁知道为什么crontab不能成功运行命令来运行一个处理程序?如果是这样,有什么办法可以解决这个问题并让 crontab 运行该行?谢谢
【问题讨论】:
标签: java python cron raspberry-pi processing