【树莓派】开机自启动脚本方法之一(.Desktop文件)
转载处:
又一个让树莓派开机运行Python脚本的方法
Linux 创建启动器(.Desktop文件)
首先,树莓派使用的是官方推荐的镜像:RASPBIAN;
在树莓派上常常会需要开机自启动python程序,方法如下:
机制上类似于 Windows 的“开始”菜单中的“启动”菜单
在 /home/pi/.config 下创建一个文件夹,名称为 autostart,并在该文件夹下创建一个xxx.desktop文件(文件名以.desktop结尾,前面可以自定义),文件内容如下:
[Desktop Entry]
Name=example
Comment=My Python Program
Exec=python /home/pi/example.py
Icon=/home/pi/example.png
Terminal=false
MultipleArgs=false
Type=Application
Categories=Application;Development;
StartupNotify=true
以上 Name、Comment、Icon 可以自定,分别表示这个启动项目的名称、备注以及显示的图标。Exec 表示调用的指令,和在终端输入运行脚本的指令格式一致。
之后 sudo reboot 重启,就可以看到 example.py 在树莓派启动后也自动启动了
个人说明:
我使用的是深度Deepin15.6的系统,以此举例:
在主目录,/home/jakey (树莓派是 /home/pi) 是看不到 .config 文件夹的,需要取消隐藏,取消隐藏的方式只需按组合件 Ctrl + H 即可
未显示隐藏文件夹↓:

按了组合按键后,显示隐藏文件夹↓,就可以看到 .config 文件夹了:

关于.desktop的说明,可以参考链接说明:
Linux 创建启动器(.Desktop文件)
语法解释:
| 关键词 | 意义 |
|---|---|
| [Desktop Entry] | 文件头 |
| Encoding | 编码 |
| Name | 应用名称 |
| Name[xx] | 不同语言的应用名称 |
| GenericName | 描述 |
| Comment | 注释 |
| Exec | 执行的命令 |
| Icon | 图标路径 |
| Terminal | 是否使用终端 |
| Type | 启动器类型 |
| Categories | 应用的类型(内容相关) |
示例说明(此为在Deepin上显示的效果,树莓派上显示可能不一样但方法是一样的):
在桌面新建一个文件,并将其命名为: Demo Desktop.desktop

按回车确定以后,变成如下图标

使用文本编辑器打开文件,输入脚本信息,我以Sublime Text示例:

[Desktop Entry]
Categories=Application;Programme;
Comment=Just a Demo
Encoding=UTF-8
Exec=python /home/jakey/Jakey/SlaveDebugTool/main.py
GenericName=Demo Desktop Name
Icon=/home/jakey/Pictures/Aurora.jpg
Name=Demo Desktop
Terminal=false
Type=Application
可能常需要修改的地方:
1、执行脚本
Exec=python /home/jakey/Jakey/SlaveDebugTool/main.py
你要执行的脚本,我使用的是绝对路径。将其替换成你想要执行的脚本即可;
这里我原先是想要执行如下语句,但是没有成功,若有知悉原因或解决方案的,望不吝告知,万分感谢:
cd /home/jakey/Jakey/SlaveDebugTool/ && python main.py
上述命令可以在终端运行~但是自启动运行是无效的;
2、图标
Icon=/home/jakey/Pictures/Aurora.jpg
更改成自己喜欢的图标所在路径即可
更改完毕后,保存,显示成设置的图标,双击后可以执行脚本,示例脚本为一个串口调试工具:


这样将桌面生成的文件放到 .config的autostart文件夹就可以开机自启动该调试工具了

【树莓派】开机自启动脚本方法之一(.Desktop文件)的更多相关文章
- ArchLinux For Arm 树莓派开机自启动脚本rc.local
今天折腾了下树莓派的迅雷固件,迅雷的安装很顺利,解压直接运行portal 就搞定了, 但是自启动就有问题了,由于新版的ArchLinux切换到systemd,不但rc.conf省了,连rc.local ...
- linux添加开机自启动脚本示例详解
linux下(以RedHat为范本)添加开机自启动脚本有两种方法,先来简单的; 一.在/etc/rc.local中添加如果不想将脚本粘来粘去,或创建链接什么的,则:step1. 先修改好脚本,使其所有 ...
- linux 开机自启动脚本
在/etc/rc.local文件中添加自启动命令(其中一种方法) 1.案例,就用博主本人之前发的博文 “nginx + flask + uwsgi + centos + python3 搭建web项目 ...
- Linux定时任务与开机自启动脚本(cron与crontab)
开机自启动脚本 网上常见的脚本开机自启方法是: 假设要自启的脚本位于 /home/user/test.sh 给脚本可执行的权限 sudo chmod +x /home/user/test.sh 将脚本 ...
- linux下添加自动启动项,linux 开机自动启动脚本方法
#service servicename status是当前状态#chkconfig --list servicename是查看启动状态,也就是是否开机自动启动 首先写好脚本,如 mysql,把它放到 ...
- 转载:ubuntu 下添加简单的开机自启动脚本
转自:https://www.cnblogs.com/downey-blog/p/10473939.html linux下添加简单的开机自启动脚本 在linux的使用过程中,我们经常会碰到需要将某个自 ...
- Linux开机自启动脚本的总结
一.在/etc/rc.local中添加 如果不想将脚本粘来粘去,或创建链接什么的, 则: step1. 先修改好脚本,使其所有模块都能在任意目录启动时正常执行; step2. 再在/etc/rc.lo ...
- Fedora 22(15以上版本)开机自启动脚本
前段时间做了一个网站btdog磁力与btdog电视直播.DHT爬虫需要消耗比较多的资源,原来的服务器不够用了,于是自己使用电脑搭了一台服务器,使用Fedora22系统.在Fedora22中自动写了些开 ...
- Centos开机自启动脚本的制作
原文地址:http://www.2cto.com/os/201306/220559.html 我的一个Centos开机自启动脚本的制作 一.切换到/etc/init.d/ 二.制作sh脚本 v ...
随机推荐
- Kestrel 服务器部署多站点问题 (nginx 反向代理)
Kestrel 作为微软的跨平台 web 服务器,有些地方用的好不是很熟. 作为一款嵌套到 dll 中的进程级 web 服务器,在同一台服务器上部署多站点确实还存在一点问题. 今天采用 nginx 做 ...
- [eShopOnContainers 学习系列] - 00 - 开发环境需求
开发环境需求 https://github.com/dotnet-architecture/eShopOnContainers/wiki/00.-Dev-machine-requirements 我的 ...
- win8里DNW的裸机程序下载
1. win8要装DNW驱动首先要禁止驱动数字签名(参考百度经验:http://jingyan.baidu.com/article/3f16e003d1f4612591c103ce.html) 2.然 ...
- win8 商店应用 设计风格原则
共八条: 1,突出内容(数据). a,仅在屏幕上保留最相关的元素:移除线条.框和不必要的图形效果:限制屏幕上持久显示的导航框,如选项卡. b,交互尽量直接在内容上,直接控制内容来完成操作,而不是使用控 ...
- jenkins-启动和关闭服务
笔者没有把Jenkins配置到tomcat中,每次都是用命令行来启动Jenkins.但是遇到一个问题:Jenkins一直是开着的,想关闭也关闭不了.百度了一些资料,均不靠谱(必须吐槽一下百度).于是进 ...
- 基于Python实现的四则运算生成程序
Github项目地址:传送门 小组成员:黄晓彬(代码实现) 黄钰城(代码审查) 需求: 1. 使用 -n 参数控制生成题目的个数. 2. 使用 -r 参数控制题目中数值(自然数.真分数和真分数分母)的 ...
- New Concept English three (38)
26w/m 45 Future historians will be in a unique position when they come to record the history of our ...
- C#模拟网络POST请求
using System; using System.IO; using System.Net; using System.Text; using System.Collections.Generic ...
- pg_rewind 源端时间线发生改变 同步失败
master-standby情况下,发生如下行为: 1.master停掉后,standby做为新的master(可能存在部分事物没有同步到standby中). 2.新master运行过程中出错,进行恢 ...
- 剑指Offer(第二版)面试案例:树中两个节点的最低公共祖先节点
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/74612786冷血之心的博客) 剑指Offer(第二版)面试案例:树 ...