如何获取可以从 Ubuntu Dash Home 执行的所有应用程序的列表?是否有一些 xml 文件存储这些信息?

Zig*_*gnd 7 database unity-dash xml

我正在构建一个应用程序,知道如何获取这些信息对我来说非常重要。在 LXDE 中,/usr/share/lubuntu/openbox/menu.xml 列出了可以从 LXDE 菜单执行的所有程序。

出于这个原因,我想知道是否有一些 .xml 文件负责组织 Ubuntu Dash Home,就像 LXDE 中的文件一样?

cha*_*kes 4

我从评论中了解到,OP 喜欢链接代码的输出,但希望将信息放入可以查询的 xml 文件中。

以下是如何修改获取 .desktop 文件内容中给出的脚本以将输出处理为 XML 文件。

filename="MyDesktopFiles.xml"
rm $filename
touch $filename

echo '<?xml version="1.0"?>' >> $filename
echo '<items>' >> $filename

for files in /usr/share/applications/*.desktop; 
do 
  echo '<item>' >> $filename
  echo '   <name>'$(grep -e "^Name=" $files | sed 's/Name=//g')'</name>' >> $filename   
  echo '   <command>'$(grep -e "^Exec=" $files | sed 's/Exec=//g')'</command>' >> $filename
  echo '</item>' >> $filename
done

echo '</items>' >> $filename
echo '</xml>' >> $filename
Run Code Online (Sandbox Code Playgroud)