该应用程序安装在哪个菜单中?

该应用程序安装在哪个菜单中?

我下载了一个应用程序“sendanywhere_latest_amd64.deb”并使用 dpkg 安装它:

sudo  dpkg -i  sendanywhere_latest_amd64.deb
Selecting previously unselected package sendanywhere.
(Reading database ... 450701 files and directories currently installed.)
Preparing to unpack sendanywhere_latest_amd64.deb ...
Unpacking sendanywhere (22.6.13-1237) ...
Setting up sendanywhere (22.6.13-1237) ...
Processing triggers for desktop-file-utils (0.26-1) ...
Processing triggers for mailcap (3.69) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for menu (2.1.48) ...

我的桌面上有很多菜单:

我的桌面上的菜单

我花了很多时间在“附件 Debian 教育 图形学 互联网 办公 其他编程 声音&视频 ‘系统工具’”中一一搜索,如何才能快速知道该应用程序安装在哪个菜单中?

答案1

如果安装了该软件包,则使用以下命令查找桌面文件dpkg -L

$ dpkg -L gnome-calculator | grep desktop
/usr/share/applications/org.gnome.Calculator.desktop

现在我们知道桌面文件存储在哪里了,让我们看看它。该文件中有很多内容,但我们只对“类别”字段感兴趣:

$ grep Categories /usr/share/applications/org.gnome.Calculator.desktop 
Categories=GNOME;GTK;Utility;Calculator;

这告诉我们gnome-calculator可以在侏儒,GTK,公用事业,和/或计算器菜单。任何带有 的内容Categories=Utility都会出现在“实用程序”菜单中。


这是另一个例子meld

$ grep Categories $(dpkg -L meld | grep desktop)
Categories=GTK;Development;

它位于“开发”菜单中,在我的系统上显示为“编程”


再举一个例子gnome-chess

$ grep Categories $(dpkg -L gnome-chess | grep desktop)
Categories=GNOME;GTK;Game;BoardGame;

这个可以在“游戏”菜单中找到。


菜单本身以及类别到菜单的映射在*.menu桌面菜单规格

对我来说(在 gnome 上)我正在寻找/etc/xdg/menus/gnome-applications.menu其中包含这样的内容:

<Menu>
  <Name>Applications</Name>
  <Menu>
    <Name>Games</Name>
    <Include>
      <Category>Game</Category>
    </Include>
  </Menu>
</Menu>

也就是说,在“应用程序”菜单中有一个“游戏”子菜单,其中包含所有桌面文件Category=Game


怎样才能快速知道

我想这不是一个快速的答案。如果您想快速搜索子菜单,则需要查看 IDE 中可用的内容。正如我提到的,我使用的是 gnome,它可以让我按 WIN 打开镜头,然后只需键入即可进行搜索。

相关内容