在 Ubuntu 和其他 Linux 中編輯 .desktop 檔案的單一命令
這個簡單的教學展示如何在 Linux 中透過單一命令編輯 .desktop 文件,即開始功能表(應用程式啟動器)中顯示的應用程式的設定檔。
在大多數 Linux 中,您在擴充座和啟動器中看到的應用程式圖示(及其名稱)由 .desktop 檔案處理。如果需要,用戶可以使用文字編輯器甚至第三方應用程式來編輯它們。
對於軟體開發、腳本編寫或同時編輯多個 .desktop 文件,有一個命令列工具可以提供協助!
透過編輯應用程式的 .desktop 檔案可以做什麼:
.desktop 檔案通常儲存在以下位置:
- /usr/share/applications - 適用於系統範圍。
- $HOME/.local/share/applications - 僅適用於目前使用者。
- /var/lib/flatpak/exports/share/applications - 用於 Flatpak 應用程式(系統範圍)。
- $HOME/.local/share/flatpak/exports/share/applications - 適用於 Flatpak 應用程式(目前使用者)。
- /var/lib/snapd/desktop/applications/ - 用於 Snap 應用程式。
透過編輯與您的應用程式關聯的 .desktop 文件,可以執行以下操作:
- 更改應用程式圖示
- 更改開始功能表中的應用程式名稱。
- 隱藏應用程式
- 將應用程式圖示分組到不同的類別。
- 與不同的文件類型關聯。
- 還有更多。
找到您的應用程式的 .desktop 文件
如果您不知道 .desktop 檔案在哪裡,請嘗試按照以下步驟尋找它。
首先,開啟終端機 (Ctrl+Alt+T) 並執行指令來安裝 plocate (對於舊版 Ubuntu 則為 mlocate):
sudo apt install plocate然後,透過執行命令更新資料庫:
sudo updatedb最後,嘗試在桌面檔案中搜尋您的應用程式(例如 Firefox):
locate "*firefox*desktop"在最後一個命令中,將 firefox 替換為您的關鍵字(區分大小寫)。並且,複製上述位置中的檔案路徑。
編輯 .desktop 檔案的單一指令
據我所知,Debian、Ubuntu、Fedora、Manjaro 及其基礎系統都具有開箱即用的桌面文件編輯工具,用於編輯 .desktop 條目。
選項 1:若要變更應用程式名稱,請使用指令:
desktop-file-edit --set-name=NEW_NAME /path/to/file.desktop
在指令中,系統目錄中的 .desktop 檔案需要 sudo。
例如,將Ubuntu中預先安裝的Firefox(Snap版本)變更為「我的網頁瀏覽器」:
sudo desktop-file-edit --set-name="My Web Browser" /var/lib/snapd/desktop/applications/firefox_firefox.desktop
選項 2:若要變更應用程式圖示,請使用指令:
desktop-file-edit --set-icon=/path/to/icon /path/to/file.desktop對於/usr/share/icons 或.local/share/icons 下的圖示文件,只需將/path/to/icon-file 替換為不含副檔名的檔案名稱(例如.png ,.svg)。
例如,更改我的 Firefox 瀏覽器的圖示:
sudo desktop-file-edit --set-icon='/home/ji/Pictures/icons/myfirefoxicon.png' /var/lib/snapd/desktop/applications/firefox_firefox.desktop選項 3:若要新增/刪除類別或 MIME 類型,請使用指令:
desktop-file-edit --add-category=VALUE_HERE /path/to/file.desktop將 --add-category 替換為以下選項之一,取決於您要執行的操作:
--remove-category--add-mime-type--remove-mime-type查看眾所周知的類別清單。
選項 4:新增/編輯其他按鍵。
使用“-set-key=KEY_NAME -set-value=KEY_VALUE”選項。您可以在單一命令中新增多對選項。
例如,透過設定「NoDisplay=true」從應用程式啟動器中隱藏 Firefox。如果不存在,它將添加鍵“NoDisplay”。
sudo desktop-file-edit --set-key=NoDisplay --set-value=true /var/lib/snapd/desktop/applications/firefox_firefox.desktop選項 5:若要刪除金鑰,請使用「-remove-key=KEY_NAME」選項。
例如,透過從 .desktop 檔案中刪除「NoDisplay=true」來取消隱藏 Firefox:
sudo desktop-file-edit --remove-key=NoDisplay /var/lib/snapd/desktop/applications/firefox_firefox.desktop選項 6:編輯多個桌面檔案
您可以使用 for 迴圈編輯多個檔案。
例如,隱藏與 .local/share/applications 目錄下的 .desktop 檔案關聯的所有 Waydroid Android 應用程式圖示。
for file in $Home/.local/share/applications/waydroid.*.desktop; do desktop-file-edit --set-key=NoDisplay --set-value=true $file; done此外,desktop-file-edit 指令將在完成編輯 .desktop 檔案後自動驗證該檔案。如果驗證未通過,它將輸出錯誤。有關更多信息,請參閱其手冊頁。


