根据标题查找.desktop文件?

这是之前提出的问题的第2部分(能够单独评价答案)。

当我输入Dash应用程序显示其标题时(同样将鼠标hover在启动器上),我如何找到关联的桌面文件。 当我使用Nautilus查看通常的可疑位置( /usr/share/applications~/.local/share/applications )时,我会看到标题,但不会看到文件名(甚至在属性很糟糕的情况下)。 当我从命令行看时,我看到文件名但不是标题(开关会很好)。

如何获得彼此相邻的列表(自定义列?)?

命令行

 grep ^Name= /usr/share/applications/* | sed 's/:Name=/ /' 

grep/usr/share/applications/中的所有文件中搜索以Name=开头的行。

对于每一行,它会发现它打印filename:line ,例如

 /usr/share/applications/yelp.desktop:Name=Help 

为了使它看起来更好一点,我们使用sed 's/:Name=/ /'来替换:Name= with (三个空格)

快速破解Nautilus中的列表视图:

安装包python-nautilus ,创建文件夹~/.local/share/nautilus-python/extensions并将以下代码保存为~/.local/share/nautilus-python/extensions/filename-column.py

 import os import urllib from gi.repository import Nautilus, GObject class FilenameColumn(GObject.GObject, Nautilus.ColumnProvider, Nautilus.InfoProvider): def __init__(self): pass def get_columns(self): return Nautilus.Column(name="NautilusPython::fd_filename_column", attribute="fd_filename", label="file name", description="file name"), def update_file_info(self, file): filename = file.get_name() file.add_string_attribute('fd_filename', filename) 

运行nautilus -q; nautilus& nautilus -q; nautilus&在命令行重启Nautilus。 然后在nautilus菜单中转到编辑 – > 首选项 – > 列表列并激活file name (您可能也想将其移动)。 现在,列表视图中还有一个列,它始终显示文件名。

不是很漂亮但是它的工作。