如何删除破折号中的重复条目?

从12.04升级到Ubuntu 14.04后,我在破折号中有重复的条目。

在此处输入图像描述

我怎么能摆脱他们?

在Dash中,应用程序由.desktop文件表示。 这些文件位于/usr/share/applications~/.local/share/applications

您在Dash中看到的不是这些.desktop文件的文件名 ,而是文件内Name=行中定义的(application-)名称。

当你在Dash中有相同应用程序的重复出现时,它几乎可以肯定意味着你有/usr/share/applications~/.local/share applications桌面文件具有不同的文件名,但代表相同的应用程序,并且具有相同的Name= line。

这是我复制gedit.desktop文件时的结果,将其重命名为monkey.desktop并将其复制到/usr/share/applications

在此处输入图像描述

在您的情况下,它可能是您已安装的已安装的新版本应用程序的结果,这些新版本安装新的.desktop文件,但名称略有不同(文件)。

你应该做的是查看两个目录,找到这些“几乎重复”的.desktop文件,删除最旧的并保留最新的。

更多信息

从两个位置: /usr/share/applications~/.local/share/applications ,后者优先。 如果两个目录中都存在两个具有相同文件名的.desktop文件,则本地文件显示在Dash中(如果只是复制,则需要注销/登录)。 这就是为什么在编辑之前首先将.desktop文件复制到本地目录(例如,将项目添加到启动器的快速列表中)并保持全局不变的原因。

如果您安装某些软件的较新版本,并且新安装的.desktop文件名与旧版本不同(并且由于某种原因删除旧文件名),则应用程序将在Dash中多次出现。 更换.desktop文件时会发生同样的情况,但人们忘记了他们有.desktop文件的本地(编辑过的)版本。