社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
手动为Linux关联文件扩展名与打开程序。
当Linux不认识某种扩展名的时候,需要为此扩展名创建一个MIME类型。Linux是依据MIME类型而不是扩展名来决定打开程序的。
再将此种MIME类型与某程序菜单项关联。
为扩展名建造一个MIME类型
如果你的Linux已经认得这种扩展名,不需要做这一步。在你的文件管理器中,看看这种扩展名的文件有没有被正确识别。或使用
file
命令查看。
创建 application-x-扩展名.xml
内容:
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="application/x-扩展名">
<comment>此种文件类型的描述</comment>
<icon name="application-x-扩展名"/>
<glob-deleteall/>
<glob pattern="*.扩展名"/>
</mime-type>
</mime-info>
放 application-x-扩展名.xml
到 ~/.local/share/mime/packages/
。
刷新系统MIME数据库
$ update-mime-database ~/.local/share/mime
为程序建造一个菜单项
如果此程序已经有菜单项,略过这一步。
创建程序.desktop
, 内容:
[Desktop Entry]
Version=1.0
Type=Application
Name=显示的程序名
Icon="/path-to/图标文件"
Exec="/path-to/执行程序" %f
Path="/path-to/" (可选)
NoDisplay=false (true则不会在系统菜单中出现)
Categories=Utility;
StartupNotify=false
Terminal=false
其关键在于Exec=
行中的%f
将文件路径传递给执行程序。Exec=
也可以没有绝对路径直接使用命令,Icon=
也可以不用路径而直接写系统认可的图标名称。
放 程序.desktop
文件到 ~/.local/share/applications/
设置用某程序打开MIME类型文件
修改 ~/.config/mimeapps.list
或 ~/.local/share/applications/mimeapps.list
(废弃)
[Added Associations]
application/x-扩展名=程序.desktop;其他程序.desktop;其他程序2.desktop;
其中application/x-扩展名
是你刚刚所创建的MIME类型。如果MIME类型是原有的不是刚刚创建的,替换为原有的MIME类型名称。
https://wiki.archlinux.org/index.php/Default_applications#MIME_database
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!