好的,这就是我想要做的:
我有一个具有特定扩展名 (*.ipynb) 的文件,我想将其与特定程序连接。但是 Ubuntu 认为它是一个text/plain
文件。
AskUbuntu 上有很多关于此主题的问题,但都没有解决。我还尝试按照此处给出的说明进行操作: https://help.ubuntu.com/community/AddingMimeTypes - 不工作。
由于这绝对是很多用户遇到的问题,有人可以发布一个答案来解释如何做到这一点吗?
答案1
这对我也有用!我想我也可以把它作为答案发布出来 - https://wiki.archlinux.org/index.php/Default_Applications#Custom_file_associations:
自定义文件关联
以下方法手动创建自定义 mime 类型和文件关联。如果您的桌面未安装 mime 类型/文件关联编辑器,则此方法非常有用。在此示例中,虚构的多媒体应用程序“foobar”将与所有 *.foo 文件关联。这只会影响当前用户。
首先,创建文件
~/.local/share/mime/packages/application-x-foobar.xml
:mkdir -p ~/.local/share/mime/packages cd ~/.local/share/mime/packages touch application-x-foobar.xml
然后编辑
~/.local/share/mime/packages/application-x-foobar.xml
并添加以下文本:<?xml version="1.0" encoding="UTF-8"?> <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> <mime-type type="application/x-foobar"> <comment>foo file</comment> <icon name="application-x-foobar"/> <glob-deleteall/> <glob pattern="*.foo"/> </mime-type> </mime-info>
请注意,您可以使用任何图标,包括另一个应用程序的图标。
接下来,编辑或创建文件
~/.local/share/applications/foobar.desktop
以包含以下内容:[Desktop Entry] Name=Foobar Exec=/usr/bin/foobar MimeType=application/x-foobar Icon=foobar Terminal=false Type=Application Categories=AudioVideo;Player;Video; Comment=
请注意,应根据应用程序类型(在此示例中为多媒体应用程序)适当设置类别。
现在使用以下命令更新应用程序和 mime 数据库:
update-desktop-database ~/.local/share/applications update-mime-database ~/.local/share/mime
使用 MIME 类型的程序(例如文件管理器)现在应该可以使用 foobar 打开 *.foo 文件。(您可能需要重新启动文件管理器才能看到更改。)