Manjaro自定义脚本开机运行

通过启动器

现在需要开机运行自定义脚本~/my_shell.sh

创建启动器文件

vim ~/.config/autostart/my_shell.desktop

内容

[Desktop Entry]
Encoding=UTF-8
Name=my shell script
GenericName=my shell script
Comment=The is my shell script
Exec=~/my_shell.sh %f
Icon=~/my_shell.png
Terminal=false
Type=Application
Categories=Application;Programme;

启动器文件语法

关键词 意义
[Desktop Entry] 文件头
Encoding 编码
Name 应用名称
Name[xx] 不同语言的应用名称
GenericName 描述
Comment 注释
Exec 执行的命令
Icon 图标路径
Terminal 是否使用终端
Type 启动器类型
Categories 应用的类型(内容相关)

Exec常用的参数有:%f %F %u %U
%f:单个文件名,即使选择了多个文件。如果已选择的文件不在本地文件系统中(比如说在HTTP或者FTP上),这个文件将被作为一个临时文件复制到本地,%f将指向本地临时文件;
%F:文件列表。用于程序可以同时打开多个本地文件。每个文件以分割段的方式传递给执行程序。
%u:单个URL。本地文件以文件URL或文件路径的方式传递。
%U:URL列表。每个URL以分割段的方式传递给执行程序。本地文件以文件URL或文件路径的方式传递

赋予执行权限

chmod +x ~/.config/autostart/my_shell.desktop

通过rc.local方式

arch系是不支持rc.local的,若需要开机以管理员执行就需要用到rc.local

安装启用rc.local

sudo pacman -S systemd-rc-local
systemctl enable rc-local

创建rc.local文件

sudo touch /etc/rc.local
sudo chmod 755 /etc/rc.local

编辑运行脚本

vim /etc/rc.local
#加入内容
#!/bin/sh
chmod 666 /etc/sda

#也可另外创建一个脚本文件,添加执行该脚本的执行语句