Gnome 1804-通过命令行将.desktop添加到启动器

Ste*_*ens 2 gnome launcher gnome-3 ubuntu-18.04

我试图编写脚本,将x.desktop项目添加到18.04中的gnome启动器中。
在unity(16.04)中,您可以使用: gsettings set com.canonical.Unity.Launcher favorites XYZ 但我无法在gnome中计算出等效项(如果甚至存在)。我发现以下问题: org.gnome.gnome-panel.launcher:/

Ste*_*ens 5

是的,我解决了这个问题,所以我想回去分享一下。

对于gnome(例如ubuntu 18.04),以下脚本会将现有的桌面文件添加到收藏夹:

application="'${1}.desktop'"
favourites="/org/gnome/shell/favorite-apps"
dconf write ${favourites} \
  "$(dconf read ${favourites} \
  | sed "s/, ${application}//g" \
  | sed "s/${application}//g" \
  | sed -e "s/]$/, ${application}]/")"
Run Code Online (Sandbox Code Playgroud)

对于Unity(例如ubuntu 16.04),以下脚本会将现有的桌面文件添加到收藏夹:

application="'${1}.desktop'"
favourites="/com/canonical/unity/launcher/favorites"
dconf write ${favourites} \
  "$(dconf read ${favourites} \
  | sed "s/, ${application}//g" \
  | sed "s/${application}//g" \
  | sed -e "s/]$/, ${application}]/")"
Run Code Online (Sandbox Code Playgroud)

脚本用法如下:

./add_favourite.sh google-chrome 
Run Code Online (Sandbox Code Playgroud)