首页 > 解决方案 > 如何查找 .desktop 文件的所有属性(名称、图标等)?

问题描述

我正在尝试创建一个使用 .desktop 文件的应用程序启动器。我想知道其他应用程序启动器使用什么来查找所述属性。我想也许我可以使用awk. 然而,试图找到name可以显示name[es]和其他外语。我还找到了一个工具desktoptojson,它将 .desktop 文件转换为 json。但是,我想知道是否有比这更有效的方法。

标签: linuxshellgtk

解决方案


由于这被标记为 GTK,我将使用 GLib 给出答案。

试试GAppInfo。您可以使用 获取系统上所有应用程序的列表g_app_info_get_all,然后获取它们的名称、图标等。它可以处理本地化,甚至具有启动应用程序的方法。

它应该自动检测默认位置中的 .desktop 文件,但如果您想获取特定文件的 GAppInfo,请使用g_desktop_app_info_new_from_filename


推荐阅读