首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Linux .desktop 文件命令行執行方法詳解

     編輯:程式設計綜合問答

問題現象

嘗試在終端直接執行 ./abc.desktop 失敗,系統將其視為腳本逐行解析,報錯 "not found"。因為 .desktop 文件本質是配置文件,而非可執行腳本。

.desktop 文件結構

[Desktop Entry]
Type=Application
Terminal=true
Name=unmount-mount
Icon=/path/to/icon/icon.svg
Exec=/path/to/file/mount-unmount.sh

正確執行方式

方法一:使用 gtk-launch (推薦)

gtk-launch abc.desktop

此命令會解析 .desktop 文件並按 Exec 字段啟動程序,效果等同於圖形界面點擊。

方法二:手動解析執行

# 提取 Exec 行並執行
exec_line=$(grep '^Exec=' abc.desktop | cut -d'=' -f2-)
eval "$exec_line"

方法三:編寫通用啟動器

用 Python/C++ 讀取 .desktop 文件,解析 Exec、Path、Terminal 等字段,構建命令行執行。

核心原理

.desktop 文件遵循 FreeDesktop 標準,僅包含元數據。桌面環境 (GNOME/KDE) 通過 gio launch 或 kde-open 解析並啟動。命令行需調用相應工具或自行解析。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved