RoboMaster机甲大师——视觉组——ubuntu开机自启动脚本分析
ubuntu开机自启动脚本分析
FOR THE SIGMA
FOR THE GTINDER
FOR THE ROBOMASTER
简介:
很久没更新了,感觉自己太弗拉不堪了,这次主要分享的是在视觉程序写好后,调试通信完成后的要做的事情——自启动脚本,本脚本可以放在桌面也可以放在home文件里面,部分带有解析。
主要实现:实时监测进程,若依旧运行着继续看守,若被杀死则立刻重新运行
操作系统版本:
Ubuntu16.04LST
gedit
所需器件:
一台你自己的ubuntu操作系统主机(这里我用的是minipc代替)
参考文献:
内容:
#!/bin/bash### BEGIN INIT INFO
# Provides: watchDog
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: start watchDog
# Description: start watchDog
### END INIT INFO
上面的是在测试时发现的问题,按照问题改后就可以运行了(也就是说直接合并上下两个就行了)
sec=1
cnt=0
PROC_NAME=main //进程名字,取决于你自己make后的名称,也可以在终端输入top来查找
Thread=`ps -ef | grep $PROC_NAME | grep -v "grep"` //判断用到,具体用法自行百度
cd /home/girt/GIRT_V/build/ //进入文件里面
make clean && make -j //清除并重新make一下,防止文件损坏(-j提高效率)
echo "12345678" | sudo -S sudo chmod +777 /dev/ttyUSB0 //用自动输入密码并开启ttyusb权限
./main //运行while [ 1 ] //循环,记得大括号里面的1两边都要空格
do
count=`ps -ef | grep $PROC_NAME | grep -v "grep" | wc -l` //判定进程运行否,是则继续,否则重新启动
echo "Thread count: $count"
if [ $count -gt 1 ];then //-gt 大于1情况下 进程没被杀害echo "The $PROC_NAME is still alive!"sleep $sec
else //进程被杀害echo "Starting $PROC_NAME"cd ~echo "12345678" | sudo -S sudo chmod +777 /dev/ttyUSB0 //12345678是我minipc上的密码echo "12345678" | sudo -S sudo chmod +777 /dev/ttyUSB1cd /home/girt/GIRT_V/build/ //移动到你要编译运行的文件夹里面./main echo "$PROC_NAME has started!"sleep $sec
fi
done
//以后的都是注释
编好后文件命名为watchdog.sh,然后win键,搜索启动找到启动运用程序,输入gnome-terminal -x sh /home/girt/watchdog.sh 即可
实验时,先rboot重启,开机要是打开了就行了,进程可以用top看,然后用pkill杀害进程(main)即可,若是杀死了还能重新启动说明没问题,要是死了就死了,说明代码有误,其他的可以在评论区聊聊
RoboMaster机甲大师——视觉组——ubuntu开机自启动脚本分析相关推荐
- RoboMaster机甲大师——视觉组——总结、未来期望与比赛经验分享
RoboMaster机甲大师--视觉组--总结与未来期望 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 入坑指南 各兵种需要的视觉: 步兵-每年必备 ...
- RoboMaster机甲大师——视觉组——摄像头的选型与应用
RoboMaster机甲大师--视觉组--摄像头的选型与应用 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介: 本篇文章主要介绍在进行图像处理时 ...
- RoboMaster机甲大师——视觉组——计算平台的选型与感想(主流几款)
RoboMaster机甲大师--视觉组--计算平台(工控机)的选型与感想(主流几款) FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介: 本篇文章 ...
- RoboMaster机甲大师:裁判系统服务器搭建(完全版)
RoboMaster机甲大师:裁判系统服务器搭建(完全版) 更新 2022.03.28 更新 2022.03.23 前言 准备 搭建步骤 MySQL安装 配置环境 组建局域网 路由器端(Router) ...
- Ubuntu开机自启动 读取.bashrc
开机自启动脚本,启动ros节点. ros节点可以启动,但是source命令没起作用,导致matlab端读不到自定义消息. 查了一下,大概是开机自启的shell和开机后手动开启终端的shell,并不完全 ...
- RoboMaster机甲大师裁判系统赛事引擎助手-RM Referee Aid
RoboMaster机甲大师裁判系统赛事引擎助手-RM Referee Aid 目录 ζ 写在前面 ζ 软件教程 ζ 软件下载 ζ 软件介绍 ζ 软件安装 ζ 功能介绍 ζ 1 裁判系统服务器的配置 ...
- Ubuntu开机自启动程序的方法
文章目录 Ubuntu开机自启动程序的方法 目标效果 方案1:修改rc.local 测试结果 方案2:单独增加一个开机启动的脚本 错误1 错误2 实测结果 refs 方案3:利用官方快捷方式启动 Ub ...
- Ubuntu开机自启动(适用于ubuntu桌面、服务器、树莓派)
Ubuntu开机自启动 前言 一.服务(Service)是什么? 二.编写服务 1.创建服务 2.撰写服务内容 3.设置服务自启动 二.编写脚本 三.编写程序 总结 前言 声明:本人使用树莓派4B+ ...
- RoboMaster 机甲大师 学生端服务器搭建
RoboMaster 机甲大师 学生端服务器搭建 文章目录 RoboMaster 机甲大师 学生端服务器搭建 前言 一.搭建路由器环境 二.服务器相关配置 1.修改重要模块 2.Q&A 组建局 ...
最新文章
- Unity3d中角色模型和角色名字保持相对位置
- distcc源码研究三
- 又又叒更新,Win 12要来了?
- 漫谈 Gentoo 中文社区的建设
- anaconda环境中使用sudo python报错
- 谷歌推出针对AI歧视的新课程!60分钟的ML公平自学训练模块 | 资源
- 第1节 flume:15、flume案例二,通过自定义拦截器实现数据的脱敏
- c语言文本格式自动对齐,c语言文件读取原始数据是1、2列是按相同的一起排列命名为Yi- 爱问知识人...
- 第五章 多个消费者监听同一个队列
- java列举生活中类和对象_趣味解读Python面向对象编程 (类和对象)
- Html 使 tbody加上滚动条
- 使用scipy.integrate模块中的quad和dblquad方法分别进行单重积分和多重积分
- safari浏览器模拟ipone,ipad以及其他浏览器版本
- Android Studio链接夜神模拟器
- cocos2d-x3.x实现屏幕画线并添加刚体属性
- Centos 6.9 Install dubbokeeper
- 软件项目管理案例教程第4版课后习题第一章
- leetcode908
- springboot整合websocket实现消息推送
- 图像处理之平滑滤波、高斯滤波和中值滤波
热门文章
- Arch Linux KDE下 WPS 部分无法打开中文名的文件问题 - 无法找到“”。请检查文件名的拼写,并检查文件位置是否正确。
- 金仓数据库KingbaseES数据迁移
- 电子音乐及HOUSE的分类知识
- 手把手教你搭建OA服务器
- 青龙面板—-美团买菜
- python3.8 百度网盘下载
- 如何下载生物数据(四):SRA数据下载
- ClickHouse - 多卷存储扩大存储容量(生产环境必备)
- 数据管理基础-ch08-10
- 鸿蒙系统笔记本电脑上市,华为:智能手表及笔记本电脑将搭载鸿蒙系统 手机明年上市...