当前位置: 首页 > 知识库问答 >
问题:

启动时的Raspberry crontab python脚本

璩珂
2023-03-14

我一直在尝试在Rpi启动时启动python脚本,但迄今为止我所尝试的一切都没有成功。

脚本是以下内容的某个版本:https://www.raspberrypi.org/learning/temperature-log/worksheet/:

#!/usr/bin/python
import os, sys
from subprocess import check_output
from re import findall
from time import sleep, strftime, time

def get_temp():
    temp = check_output(["vcgencmd","measure_temp"]).decode("UTF-8")
    temp = float(findall("\d+\.\d+",temp)[0])
    return(temp)

while True:
    log=open("cpu_temp.txt","a")
    temp = get_temp()
    log.write("{0} {1}".format(strftime("%Y-%m-%d %H:%M:%S"),str(temp))+" degreeC\r\n")
    sleep(60)  
    log.close()

它本身工作得很好。我试着编辑crontab,有无Python的绝对路径,以及编辑/etc/rc。地方的

我知道它不起作用,因为它应该创建一个文本文件并每分钟编辑一次,而且它不是在启动时创建的。我在crontab和rc.local中还有其他命令正在工作。

需要一些帮助!

共有3个答案

季森
2023-03-14

您可以在~/. bashrc文件中调用您的脚本。它将在启动或终端打开时调用。

就写:

python /path/to/your/script.py

在. bashrc文件的末尾。

吴高洁
2023-03-14
sudo crontab -e

@reboot /usr/bin/python /path/to/file/script.py

<代码>/路径/目标/文件/脚本。py可能类似于home/username/script。py

如果它仍然不起作用,您可以尝试使用以下方式授予它执行权限:

chmod a+x script.py
聂季同
2023-03-14

如果您的脚本位于home/pi/tempcheck。py

sudo crontab -e

并附加该行

@reboot python /home/pi/tempcheck.py &

然后保存并退出。

有关更多详细信息,请访问http://www.raspberrypi-spy.co.uk/2013/07/running-a-python-script-at-boot-using-cron/

您可以检查它是否正在运行

ps aux | grep tempcheck.py

请注意,如果您编辑root的crontab,python进程将以root身份运行。所以你应该在python脚本中使用绝对文件名:

log=open("/home/pi/cpu_temp.txt","a")
 类似资料:
  • 问题内容: 首先,这可能需要移至超级用户。我无法确定哪个场地更好。 我正在尝试编写一个将在启动/重新启动时运行的R脚本,并将该计算机添加到doRedis工作者池中。(doRedis是一个foreach后端)。 这是我的R脚本“〜/ Rworker.R” 我可以使用command从命令行运行此脚本 。 接下来,我编写了一个shell脚本来运行R脚本,标题为“ /etc/init.d/StartWor

  • Main application script - server.js (启动脚本) 以下案例为 构建器生成代码: /** * 加载 model, 创建基础 app */ var loopback = require('loopback'); var boot = require('loopback-boot'); var app = module.exports = loopback();

  • 本文向大家介绍在Windows启动时自动运行Python脚本?,包括了在Windows启动时自动运行Python脚本?的使用技巧和注意事项,需要的朋友参考一下 将Python脚本添加到Windows启动时,基本上表示Python脚本将在Windows启动时运行。这可以通过两步过程来完成- 步骤#1:在Windows启动文件夹中添加或添加脚本 在启动Windows后,它会执行(相当于双击)其启动文件

  • 我想在我的Parallela板启动时运行一个bash脚本,它有Ubuntu。我搜索了SO,在这里找到了说明: 在linux ubuntu下启动时自动运行程序 在Linux上启动时以编程方式运行 我的bash脚本是test。sh,只有一行: 1) 我尝试的第一种方法是添加到脚本的aboslute路径: 2) 我尝试的第二种方法是遵循上面公认的答案。 在这两种情况下,脚本都是在引导后执行的,并且有一个

  • 4. bash启动脚本 启动脚本是bash启动时自动执行的脚本。用户可以把一些环境变量的设置和alias、umask设置放在启动脚本中,这样每次启动Shell时这些设置都自动生效。思考一下,bash在执行启动脚本时是以fork子Shell方式执行的还是以source方式执行的? 启动bash的方法不同,执行启动脚本的步骤也不相同,具体可分为以下几种情况。 4.1. 作为交互登录Shell启动,或者

  • 问题内容: 在Amazon S3 Linux实例上,我有两个名为的脚本,它们 永远 启动和停止(依次运行Node.js应用程序)。我使用这些脚本手动启动和停止我的Node.js应用程序。到目前为止,一切都很好。 我的问题:我还想将其设置为在系统启动时运行。我知道我需要在其中添加文件,并且知道如何将其符号链接到其中的适当目录,但是我无法弄清楚放置在其中的文件中实际需要什么。我认为这应该只是一条线,例