簡體   English   中英

樹莓派crontab和python中的中斷

[英]Raspberry pi crontab and interrupts in python

我編寫了一個python腳本,該腳本通過觸發中斷的按鈕按下來將一些數據記錄到具有絕對路徑/home/pi/foo.txt的txt文件中。 我已經通過命令行多次啟動了腳本,而沒有任何問題:按go時,腳本運行;按stop時,腳本停止。 該腳本位於/home/pi/log.py中。 我寫了一個將執行此python腳本的shell腳本,因為我讀到它可能對教程有幫助,所以我們將其稱為log.sh,它調用

#! /bin/sh
cd /home/pi
/usr/bin/python /home/pi/log.py

但是,當我嘗試通過將其添加到我的crontab中啟動該腳本時

@reboot log.sh

該腳本將運行,但是沒有按鈕按下將停止該腳本(aka停止按鈕將不起作用)。 CPU使用率上升到100%並保持不變。 我曾嘗試將環境變量從用戶環境復制並粘貼到crontab中,但這也不起作用。

有任何想法嗎?

我了解了crontab使用的環境與用戶的環境不同的困難方式。

查看此堆棧溢出流程,以獲取有關用戶和crontab之間環境差異的更多信息: https : //serverfault.com/questions/698577/why-is-the-cron-env-different-from-the-users-env/698635

我認為最好的辦法就是只用python做所有事情。 有一個像crontab一樣的python環境。 它稱為schedule( https://pypi.python.org/pypi/schedule )。

我實際上是在樹莓派恆溫器項目中使用它。 在這里查看: https : //github.com/mababio/raspi_thermostat/blob/c6aea6ded6874d0dc21ded34f07874dd7f97dd15/src/thermo/test/jobs.py

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM