设置python程序自启动shell脚本

本文介绍了如何通过编写Shell脚本来实现当Python程序处理远程rtsp流因丢包或网络卡顿意外退出时,自动重启程序。创建了一个名为run.sh的脚本,无限循环执行Python程序test.py。当需要停止脚本时,首先找到并终止run.sh进程,然后通过top命令获取并杀死相关联的Python进程。这个解决方案对于多进程环境特别有用,确保了程序的稳定运行。
摘要由CSDN通过智能技术生成

最近在rk3399pro开发板上编写python程序(opencv获取rtsp流–vpu硬件解码—多进程读取/处理),但是由于远程网络摄像头rtsp流会发生丢包、网络卡顿的现象,导致程序意外退出,现通过设置shell脚本自动启动意外中断的程序。
1、编写/运行shell脚本

vim run.sh  #建一个run.sh脚本,写入下面内容
"""
#!/bin/bash
while [ 1 ];do
    python test.py
done
"""
chmod +x ./run.sh  #设置权限
./run.sh    #运行脚本

2、shell脚本退出

#查看进程号(run.sh为shell脚本名)
root@root:~# ps -ef | grep run.sh   
root      5783  1397  0 11:04 pts/0    00:00:00 /bin/bash ./run.sh
root      5966  5953  0 11:08 pts/2    00:00:00 grep run.sh
#终止进程
root@root:~# kill -9 5783

一般的shell脚本到这一步就可以退出了,但由于我是多进程,所以还需要把进程再kill一遍。

root@root:~# top #查看进程号
PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                    
5797 root      20   0  789124  73788  44760 S  35.1   1.9   2:58.34 python                     
5798 root      20   0  909916  67728  42960 R  25.6   1.7   2:05.47 python 
root@root:~# kill -9 5797 5798  #批量kill 进程

这样退出shell脚本了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值