列出“显示应用程序”按钮和“dash to dock”侧栏中的所有应用程序名称

列出“显示应用程序”按钮和“dash to dock”侧栏中的所有应用程序名称

是否可以使用命令行/bash 列出单击显示应用程序(通过图标)按钮时显示的所有应用程序名称,以及 Dash 到 Dock 侧栏中显示的应用程序?

我运行了这个命令: cd /usr/share/applications && ls -l

但当我这样做时,我会看到除“显示应用程序”和“dash to dock”中的应用程序之外的所有应用程序

答案1

如果不存在用于此目的的脚本,那么您可能需要编写一些脚本来获得显示的应用程序的正确列表,而不是使用单个命令。

“显示应用程序”中的应用程序由位于特定目录中的有效启动器表示.desktop。因此,脚本应该 1) 扫描文件所在的所有目录.desktop,2) 搜索这些文件的内容以仅选择有效显示的文件。

  1. 桌面环境在环境变量中指定的.desktop所有applications目录中搜索启动器XDG_DATA_DIRS

    您可以使用以下命令查看这些目录:

    printenv XDG_DATA_DIRS
    

    此外,~/.local/share/applications还会搜索用户的本地应用程序目录。

  2. 只有在行中指定了有效可执行文件的.desktop启动器才有可能显示在应用程序菜单中。可以单独设置文件是否显示在菜单中。Type=ApplicationExec=.desktop

    用于控制.desktop启动器显示的键包括NoDisplay(不在菜单中显示)、Hidden(将此.desktop文件视为不存在)OnlyShowInNotShowIn(仅显示或不在特定桌面环境中显示)(请参阅可能的键这里)。

利用这些信息,可以创建一个脚本,列出有关桌面应用程序菜单中可用的应用程序的所需信息。

相关内容