Ubuntu18.04 Desktop Entry

摘要:
在Linux中也有类似的功能:DesktopEntry文件,LinuxGNOME等桌面桌面系统就是使用DesktopEntry文件来描述程序的启动与配置信息。我这里使用的Ubuntu18.14,使用下面的命令cd到系统保存DesktopEntry文件的目录cd/usr/share/applicationsls一下看看application目录下的文件:如上图所示,DesktopEntry文件以".desktop"为后缀名,这些文件就描述了Ubuntu18.04上安装的应用程序的启动信息等。
1.Desktop Entry 是什么?

我们都知道,在Windows里软件在安装的时候都会询问是不是要在开始菜单和桌面创建快捷方式,这样就不用在使用软件的时候去安装目录启动,而是直接去开始菜单点击相应的软件快捷方式即可。在Linux中也有类似的功能:Desktop Entry文件,Linux GNOME等桌面桌面系统就是使用Desktop Entry文件来描述程序的启动与配置信息。

我这里使用的Ubuntu18.14(前两天刚发布就装上了,比起16.04漂亮了不少啊,哈哈),使用下面的命令cd到系统保存Desktop Entry文件的目录

cd /usr/share/applications

ls一下看看application目录下的文件:

Ubuntu18.04 Desktop Entry第1张

如上图所示,Desktop Entry 文件以".desktop"为后缀名,这些文件就描述了Ubuntu18.04上安装的应用程序的启动信息等(非常类似于Win上的开始菜单里的快捷方式)。

打开所有应用程序浏览器(Ubuntu版开始菜单),我们能看到很多应用图标,点击相应图标就能打开这个应用,其实这里的每一个应用图标都对应上图中application目录下的一个“.desktop”文件,举个栗子:只有在/usr/share/applications有一个叫firefox.desktop的配置文件,应用程序浏览器里才会有该软件的图标,我们才能通过应用程序浏览器打开FireFox浏览器。

Ubuntu18.04 Desktop Entry第2张

也就是说,系统会去/usr/share/applications目录下读取“.desktop”文件,然后根据文件配置在应用程序浏览器中添加上启动应用程序的快捷方式。

那么问题来了:

Desktop Entry文件的格式是什么样的?

我自己手动安装的软件会自动出现在这里吗?

2.Desktop Entry文件格式

以firefox浏览器为例,使用cat命令查看下firefox浏览器对应的“.desktop”文件是什么样子的:

cat firefox.desktop

Ubuntu18.04 Desktop Entry第3张

其实就是一堆赋值的信息,重要的一些字段如下:

[Desktop Entry]
Version=1.0
Name=Firefox Web Browser
Comment=Browse the World Wide Web
GenericName=Web Browser
Keywords=Internet;WWW;Browser;Web;Explorer
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=firefox
Categories=GNOME;GTK;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
StartupNotify=true
Exec=firefox -new-window
Actions=new-window;new-private-window;

其实只看名字也能知道个大概了,Name是名字,Version是版本,Icon是图标~~~

关于全部的字段意义,可以去本文章最后的参考链接中查找,这里就不列举了。

3.手动安装的软件如何添快捷方式加到应用程序管理器

遗憾的是Ubunt上我们自己安装的软件并不会自动添加到应用程序管理器,比如Eclipse,解压出来就能用,根本不像Win一样有一个setup.exe帮你把所有的事情做完了。

那么,怎么添加上呢?

很简单,在/usr/share/applications目录下建立一个“.desktop‘文件就好了。

第一步:如下图,我安装了Eclipse

Ubuntu18.04 Desktop Entry第4张

第二部:在/usr/share/applications目录下新建一个名为”eclipse.desktop“的文件,根据实际内容(软件安装的位置、类型等)填写字段。

Ubuntu18.04 Desktop Entry第5张

这时候,应用浏览器中就会有Eclipse的快捷图标了(右上角)

Ubuntu18.04 Desktop Entry第6张

关于 Categoruies这个字段要说一下:

cat /etc/xdg/menus/application.menu
cd /usr/share/desktop-directories

参考本文最后脚本之家

-----------------------------------

参考链接:

IBM:https://www.ibm.com/developerworks/cn/linux/l-cn-dtef/index.html

脚本之家:http://www.jb51.net/os/RedHat/523235.html

免责声明:文章转载自《Ubuntu18.04 Desktop Entry》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇用JavaDoc生成项目文档vimium的使用介绍和基本用法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

形形色色的软件生命周期模型(1)——瀑布型、增量型

摘要:读大学时,我们曾经学习过不少软件生命周期模型,当时还不是很懂软件开发,你可能会觉得这些东西很新奇。在实际工作中,你会发现这些模型其实很难应用,与此同时你会接触到RUP、MSF等权威软件公司的生命周期模型。本文将向你介绍各种常见的软件生命周期模型及它们的优缺点,文章最后还会介绍吸取了各种模型优点的实用生命周期模型。 大纲: 1.瀑布型 2.增量型 3....

macOS 10.13允许任何来源开启方法

软件下载网站: http://www.pc6.com/ 软件安装问题: macOS 10.13允许任何来源开启方法: 如果需要恢复允许“任何来源”的选项,即关闭系统的Gatekeeper,我们可以在“启动台(系统界面下方Dock栏中的小火箭图标)”—“其他”—“终端”中使用spctl命令:(复制粘贴下面的代码到终端,再回车即可) sudo spctl --...

IVR交互式语音应答系统

ZingServ平台IVR子系统介绍 IVR系统的中文译名为"交互式语音应答系统",然而,真正的IVR系统早已超出这种中文译名所描述的功能范围--IVR是一种功能强大的电话自动服务系统。对用户来说,只有理解了这一点,才能真正了解IVR系统的价值;而对产品提供商来说,也只有理解了这一点,才能真正明确产品的应用范围和设计目标。  在ZingServ一体化呼叫中...

软件项目版本号的命名规则及格式介绍

版本控制比较普遍的 3 种命名格式 : 一、GNU 风格的版本号命名格式 : 主版本号 . 子版本号 [. 修正版本号 [. 编译版本号 ]] 英文对照 : Major_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number]] 示例 : 1.2.1, 2.0, 5.0.0 bu...

Python引用模块和查找模块路径

模块间相互独立相互引用是任何一种编程语言的基础能力。对于“模块”这个词在各种编程语言中或许是不同的,但我们可以简单认为一个程序文件是一个模块,文件里包含了类或者方法的定义。对于编译型的语言,比如C#中的一个.cs文件,Java中的一个.java或者编译后的.class文件可以认为是一个模块(但常常不表述为模块);对于解释型的语言会更加直观些,比如PHP的....

关于向日葵Linux端、win10版本交互“连接已断开”问题的解决

近日安装向日葵win10客户端与Ubuntu18客户端,安装过程简单,此处不描述。安装后注册账号,在win、U客户端正常登录,也可以手机安装手机App,过程此处不描述。有问题可以留言。在进行远程协助时遇到了通过Win10客户端控制Ubuntu客户端,以及手机App控制Ubuntu客户端时出现了“连接断开”和“正在进入远程桌面”的提示。经过一番痛苦的搜索,终...