我的目标是每天(除了星期五和星期六)在10:00运行python脚本,并在18:00之前终止它。在
我在crontab中添加了以下命令,但是第二个命令不起作用。在
0 10 * * 0,1,2,3,4 /home/pi/MotionDetector.py
0 18 * * 0,1,2,3,4 /home/pi/MotionDetector.py killall -9 MotionDetector.py
使用Linux 2.7.9
我尝试了通过终端而不是cron中工作的this解决方案(当我在终端中键入命令时,它立即关闭了脚本,但当我将它放在crontab上时,它什么也没做)
因为杀了工作:
pkill
按名称终止进程。虽然默认的搜索条件是通过进程的全名来查找进程,-f
参数允许您按进程名称中的任何部分进行搜索。在更新了解决方案以说明@håken-lid提出的方案:
当脚本由cron或用户执行时,进程名的格式为:
cron:
/home/pi/venv/bin/python /home/pi/MotionDetector.py
用户:
python MotionDetectory.py
使用简单的regex模式,我们可以终止启动的进程
cron或用户:
0 18 * * 0,1,2,3,4 /usr/bin/pkill -f 'python.*MotionDetector.py'
只有克朗
0 18 * * 0,1,2,3,4 /usr/bin/pkill -f ^'/home/pi/venv/bin/python /home/pi/MotionDetector.py'
相关问题 更多 >
编程相关推荐