~/.local/share/applications/下创建.desktop文件,该目录用于存放用户自定义的应用程序启动器

在文件中写入如下内容:

[Desktop Entry]
Version=1.0
Type=Application
Name=你的脚本名称
Comment=对你的脚本的简短描述
Exec=/bin/bash -c "cd /path/to/your/script/directory && ./your_script_name.sh"
Icon=/path/to/an/icon.png # 可选:指定一个图标文件路径
Terminal=false # 如果脚本需要在终端中运行,改为 true
Categories=Utility;Application; # 可选:指定应用程序分类
  • [Desktop Entry]: 这是文件的开头,表示这是一个桌面入口文件。
  • Version: 桌面入口规范的版本。通常是 1.0。
  • Type: 入口类型。对于应用程序是 Application。
  • Name: 在应用程序抽屉中显示的名称。例如:我的自定义脚本。
  • Comment: 对脚本的简短描述,鼠标悬停时可能会显示。
  • Exec: 这是最重要的一行。它指定了要执行的命令。
    • Exec=/path/to/your/script/name.sh: 如果你的脚本不需要在特定目录下执行,可以直接写脚本的绝对路径。
    • Exec=/bin/bash -c "cd /path/to/your/script/directory && ./your_script_name.sh": 如果你的脚本依赖于其所在的目录,使用这种方式可以先切换到脚本目录再执行。请将 /path/to/your/script/directory 替换为你的脚本所在的实际目录,将 your_script_name.sh 替换为你的脚本文件名。
    • 如果你的脚本需要以特定方式执行(例如使用 python 或其他解释器),请相应修改 Exec 行。例如:Exec=python /path/to/your/script/name.py
  • Icon: 可选字段,指定一个图标文件的路径(.png、.svg 等)。这个图标将显示在应用程序抽屉中。你可以使用系统自带的图标(例如 utilities-terminal)或者指定一个自定义图标的绝对路径。
  • Terminal: 如果你的脚本需要在终端窗口中运行(例如,它有命令行输出或需要用户输入),将此项设置为 true。如果脚本是图形界面的,或者不需要终端交互,设置为 false。
  • Categories: 可选字段,用于将应用程序分类到应用程序菜单的不同部分。常见的分类有 Utility(实用工具)、Application(应用程序)、Development(开发) 等。

使 .desktop 文件可执行:

chmod +x ~/.local/share/applications/my_script.desktop

使脚本文件本身可执行:

chmod +x /path/to/your/script/name.sh

注意事项:如果你的脚本需要 root 权限才能运行,需要在 Exec 字段中使用 gksu 或 pkexec 来启动脚本,例如:Exec=gksu /path/to/your/script/name.sh