简述
在 Linux 系统中,.desktop 文件是 桌面入口文件,用于在桌面环境(如 GNOME、KDE)中定义应用程序的启动方式、图标、名称等信息。当你执行 touch idea.desktop 时,实际上创建了一个空的 .desktop 文件(例如为 JetBrains IDEA 或其他软件创建快捷方式)
-
.desktop文件的作用
- 图形化快捷方式:让应用程序出现在系统菜单、桌面或 Dock 中
- 自定义启动参数:指定启动命令、工作目录、环境变量等
- 统一管理应用入口:标准化应用在 Linux 桌面环境中的集成
-
文件内容结构
一个典型的 .desktop 文件需要包含以下关键字段
[Desktop Entry]
Type=Application
Name=IntelliJ IDEA Community Edition
Icon=/home/idea-IC-202.7660.26/bin/idea.svg # 自己idea的icon位置
Exec=sudo /home/idea-IC-202.7660.26/bin/idea.sh # 自己idea的脚本位置,前面要加sudo
Comment=Capable and Ergonomic IDE for JVM
Categories=Development;IDE;
Terminal=true # 如果没有给自己账户root权限就需要这里设为true来启动终端输入密码
StartupWMClass=xxxx # 需要使用命令查询填充
字段 | 说明 |
---|---|
Type=Application | 固定值,表示这是一个应用程序入口 |
Name | 显示在菜单中的应用程序名称 |
Exec | 实际执行的命令或脚本路径(必须绝对路径) |
Icon | 应用程序图标的路径(支持 PNG、SVG 等格式) |
Categories | 应用分类(如 Development、IDE),影响菜单归类 |
Terminal | 是否在终端中运行(true/false) |
StartupWMClass | 将应用程序窗口与桌面入口(快捷方式)精准关联(避免任务栏/启动器中出现重复图标 / 精准匹配窗口类名),启动应用后,运行终端xprop WM_CLASS命令,然后点击对应窗口,得到 WM_CLASS(STRING) = “Navigator”, “firefox”,取第二个字符串 |
-
正确创建 .desktop 文件的步骤
- 创建并编辑文件(内容如上)
vim idea.desktop
- 赋予执行权限
chmod +x idea.desktop
- 放置到标准目录
- 用户级快捷方式(仅当前用户生效)
mv idea.desktop ~/.local/share/applications/
- 系统级快捷方式(所有用户生效)
sudo mv idea.desktop /usr/share/applications/
- 用户级快捷方式(仅当前用户生效)
- 创建并编辑文件(内容如上)
-
常见问题
- 问题 1:快捷方式不显示或无法启动
- 原因:路径错误、权限不足或文件格式错误
- 解决:
- 检查 Exec 和 Icon 的路径是否正确;
- 确保文件有可执行权限:chmod +x idea.desktop;
- 验证文件语法:desktop-file-validate idea.desktop
- 问题 2:图标不显示
- 原因:图标路径错误或格式不支持
- 解决:
- 使用绝对路径指向图标文件(如 /opt/idea/bin/idea.png)
- 确保图标文件存在且格式为 PNG/SVG
- 问题 1:快捷方式不显示或无法启动