精华内容
下载资源
问答
  • 树莓派开机自动运行python脚本,查看后台线程,前后台转换: 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录树莓派开机自动运行python脚本,查看后台线程,前后台转换:前言一、树莓派...

    树莓派开机自动运行python脚本,查看后台线程,前后台转换:


    一、安装screen

    1.安装

    sudo apt-get install screen
    

    在这里插入图片描述

    2.使用screen创建新的终端

    (这里我创建了一个名字为my_test2的终端,要记住终端的名字)

     screen -S my_test2
    

    在这里插入图片描述

    成功创建后会清屏

    在这里插入图片描述

    3.在screen 终端上跑我的脚本

    (尽管把终端关了,这个脚本依然会在后台运行)
    在这里插入图片描述

    你不信???继续往下看… …

    二、查看树莓派后台线程

    1.打开终端输入 ps aux 查看所有的进程

    我已经将刚才的终端关闭了,现在新打开一个终端,输入ps aux
    可以看到test2.py线程,依然在后台运行

    ps aux
    

    在这里插入图片描述

    2.或者打开终端输入 ps -ef | grep python 查看python的进程

    ps -ef | grep python
    

    在这里插入图片描述

    三、恢复后台的程序(在终端上显示)

    my_test2就是一开始创建的终端的名字

    screen -r my_test2
    

    在这里插入图片描述
    可以看到,程序是一直在跑的!
    在这里插入图片描述

    四、开机自动创建终端,自动运行脚本

    1.首先我们需要制作一个脚本。在终端下输入并回车新建脚本文件start.sh

    创建文件:

    touch start.sh
    

    设置权限:

    chmod 777 start.sh
    

    在这里插入图片描述

    2.然后向rc.local文件添加启动代码

    在终端输入 sudo vi /etc/rc.local 并回车

    sudo vi /etc/rc.local
    

    在打开的文本中找到exit 0,在此之前添加的代码在启动时都会被执行,在exit 0 之前添加一行代码:

    su pi -c "exec /home/pi/start.sh"
    

    在这里插入图片描述
    保存并退出
    这时候,树莓派通电的时候就会运行 start.sh 脚本.而我们接下来就是要做start.sh上创建screen 终端,并且运行我们的python脚本

    3.编辑start.sh

    vi start.sh
    

    输入一下代码:

    screen_name="my_test2"  
    screen -dmS $screen_name 
    cmd="python3 /home/pi/Arm_Pi/test2.py";  
    screen -x -S $screen_name -p 0 -X stuff "$cmd"  
    screen -x -S $screen_name -p 0 -X stuff '\n'
    

    现在,我们创建了一个名为 my_test2 的窗口。
    然后,我们向其发送具体的命令 python3 /home/pi/Arm_Pi/test2.py


    这样,我们就向my_test2发送了一条python3 /home/pi/Arm_Pi/test2.py命令了。

    以后其他的开机启动命令都可以放在start.sh中

    sudo reboot
    

    重启一下,进入后台, test2.py 已经在运行了… …

    五、关闭程序

    从后台查看,我们可以看到 test2.py 的PID是850
    在这里插入图片描述
    在终端上输入kill 580就可以关闭test2.py的脚本

    kill 850
    
    展开全文
  • 本文实例为大家分享了微信小程序跳一跳自动运行脚本,供大家参考,具体内容如下 1、压缩包带了adb等必须工具,配置一下环境变量即可 2、Python 直接运行即可 (Python3.6) 代码: wechat_jump_auto.py # coding: ...
  • 首先与树莓派开机自动运行程序的教程非常多,但在这里有一个声明 如果运行的程序不需要使用桌面窗口,则所有的方法都可以使用 如果运行的程序需要使用桌面窗口,比如使用了QT,那么则需要通过桌面启动的方式进行启动...

    首先与树莓派开机自动运行程序的教程非常多,但在这里有一个声明

    如果运行的程序不需要使用桌面窗口,则所有的方法都可以使用

    如果运行的程序需要使用桌面窗口,比如使用了QT,那么则需要通过桌面启动的方式进行启动。
    很多教程上说,使用桌面启动的方式会导致每次启动桌面都会运行一次脚本,比如当使用远程VNC访问桌面的时候还会重启一次。
    但是我的树莓派并没有出现远程VNC连接桌面二次启动的情况,所以我并没有去管这个东西,但是如果你的树莓派真的发生VNC远程连接进行二次启动的情况,我相信你也可以通过程序的方式来避免这个问题!!!

    或者需要较大的延时,以达到使得桌面启动的情况下进行启动的目的(没有试过)

    下面开始我的教程:
    1、首先我们创建一个 sh 文件:

    pi@raspberry:~ $ nano start_up.sh
    

    在里面输入一下内容,请注意所有内容均使用绝对路径:

    #!/bin/sh
    touch /home/pi/start_up.txt
    chmod /home/pi/start_up.txt
    echo "start succefully" >> /home/pi/start_up.txt
    

    ctrl+o保存,enter,ctrl+x离开
    将保存的文件赋予执行权限

    pi@raspberry:~ $ chmod start_up.sh
    

    2、我们测试是否有效,用文件管理器执行pi下面我们创建的start_up.sh
    如果在pi下面出现了start_up.txt文件,并且内容出现了start succefully,证明这个sh文件是有效的

    3、在/home/pi/.config/目录下新建一个名为 autostart 的文件夹:

    pi@raspberry:~ $ mkdir .config/autostart
    

    在 autostart 下新建一个文件:

    pi@raspberry:~ $ nano .config/autostart/start_up.desktop
    

    文件内容:

    [Desktop Entry]
    Type=Application
    Name=testboot
    NoDisplay=true
    Exec=/home/pi/start_up.sh
    

    此时我们执行 sudo reboot 命令重启树莓派就会执行我们第一步制作的 sh 文件的内容,可以在 pi 文件夹下面看到 start_up.txt 文件

    4、最后我们如果要执行 Python 脚本,我们需要修改我们第一步创建的 sh 文件
    在末尾添加:

    sudo -H -u pi /usr/bin/python3 /home/pi/test/runhe.py
    

    可以修改解释器的位置,可以修改执行的 Python 脚本文件。

    展开全文
  • 1、新建rc.local touch /etc/rc.d/rc.local vim /etc/rc.d/rc.local ...#下面是需要执行的脚本 2、赋予可执行权限 chmod +x /etc/rc.d/rc.local 3、编辑/usr/lib/systemd/system/rc-local.service,添加如下内容 [...

    1、新建rc.local

    touch /etc/rc.d/rc.local

    vim /etc/rc.d/rc.local

    #!/bin/bash

    #下面是需要执行的脚本


    2、赋予可执行权限

    chmod +x /etc/rc.d/rc.local


    3、编辑/usr/lib/systemd/system/rc-local.service,添加如下内容

    [Install]

    WantedBy=multi-user.target


    4、设置开机启动

    systemctl enable rc-local.service















    本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/2071875,如需转载请自行联系原作者
    展开全文
  • 近期因科研需要,需命令树莓派开机后无需进行任何操作自动运行一个python脚本,经查阅部分资料后实现了该功能,为方便以后查看特此记录一下。 1、打开cmd,输入 sudo vim /etc/rc.local 若报错,则说明没有安装vim...

    近期因科研需要,需命令树莓派开机后无需进行任何操作自动运行一个python脚本,经查阅部分资料后实现了该功能,为方便以后查看特此记录一下。

    1、打开cmd,输入

    sudo vim /etc/rc.local
    

    若报错,则说明没有安装vim,请自行百度安装。

    在这里插入图片描述

    2、在键盘按下i,进入输入模式,在exit 0 之前,su pi -c 之后输入

    sudo /usr/bin/python3 /home/pi/DSADS/run.py&
    

    其中/home/pi/DSADS/run.py为需要运行的python程序的绝对路径

    若要求python程序一直运行,则需要在最后添加&,若只需要运行一次,则不需要输入

    友情提示:在python程序运行前建议加一个延时程序,防止系统在未完全启动时便运行程序,造成不必要的崩溃。

    在这里插入图片描述

    3、将最顶部的

    #!/bin/sh -e
    

    修改为

    #!/bin/bash
    

    4、按esc退出输入模式,输入:wq保存并退出,重启设备即可。

    5、重启后打开cmd,输入

    sudo systemctl status rc-local
    

    若Activate一栏显示activat(running说明程序正在运行)在这里插入图片描述

    展开全文
  • 设置linux开机自动运行Python脚本

    千次阅读 2014-02-18 20:42:09
    实现目标:在Linux启动时,自动运行位于普通用户test1根目录下的脚本程序test.py,该程序会在每次执行时自动向本地日志文件追加一条记录,源码如下:  from datetime import datetime  now=datetime.

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,129
精华内容 1,251
关键字:

自动运行python脚本

python 订阅