是否可以从快速列表执行.desktop 文件?

是否可以从快速列表执行.desktop 文件?

我创建了这个启动器,其中包含一个快速列表,其中包含用于执行不同应用程序的选项。其中一个选项是 TeamViewer,这是它的快速列表代码:

[桌面操作 fav-teamviewer]
名称=TeamViewer
Exec=/opt/teamviewer9/tv_bin/script/teamviewer
OnlyShowIn=Unity

这很完美,但如果我想直接执行“teamviewer.desktop”文件怎么办?像这样...

[桌面操作 fav-teamviewer]
名称=TeamViewer
Exec=/usr/share/applications/teamviewer.desktop
OnlyShowIn=Unity

我试过了,但不起作用。为什么不起作用?是我做错了还是根本做不到?

我之所以要这样做,是因为如果我从 Dash 正常运行 TeamViewer,其在启动器上的图标是完美的(第一张图片);但如果我从该快速列表选项运行它,它会失去其默认图标并获取通用 Wine 应用程序图标(第二张图片)。请查看屏幕截图以更好地理解。

如果从 Dash 运行: 如果从 QuickList 运行:

希望您能帮助我。感谢您的关注。

答案1

桌面文件无法直接从 启动Exec。因此,使用gtk-launchExec在您的第二个文件选项中如下:

[Desktop Action fav-teamviewer]
Name=TeamViewer
Exec=gtk-launch teamviewer.desktop /usr/share/applications
OnlyShowIn=Unity

通过这种方式,您将能够teamviewer.desktop通过启动此文件来启动。


man gtk-launch

姓名
       gtk-launch——启动应用程序

概要
       gtk-launch [应用程序] [URI...]

桌面文件的使用参考:-

描述  
         gtk-launch 至少接受一个参数,即要启动的应用程序的名称。
该名称应与应用程序桌面文件名匹配,如位于 /usr/share/application 中,
带有或不带有“.desktop”后缀。

相关内容