Linux关联文件扩展名和打开程序
Overview
手动为Linux关联文件扩展名与打开程序。
当Linux不认识某种扩展名的时候,需要为此扩展名创建一个MIME类型。Linux是依据MIME类型而不是扩展名来决定打开程序的。
再将此种MIME类型与某程序菜单项关联。
手动关联步骤
-
为扩展名建造一个MIME类型
如果你的Linux已经认得这种扩展名,不需要做这一步。在你的文件管理器中,看看这种扩展名的文件有没有被正确识别。或使用
file
命令查看。创建
application-x-扩展名.xml
内容:1<?xml version="1.0" encoding="UTF-8"?> 2<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> 3 <mime-type type="application/x-扩展名"> 4 <comment>此种文件类型的描述</comment> 5 <icon name="application-x-扩展名"/> 6 <glob-deleteall/> 7 <glob pattern="*.扩展名"/> 8 </mime-type> 9</mime-info>
放
application-x-扩展名.xml
到~/.local/share/mime/packages/
。
刷新系统MIME数据库1$ update-mime-database ~/.local/share/mime
-
为程序建造一个菜单项
如果此程序已经有菜单项,略过这一步。
创建
程序.desktop
, 内容:1[Desktop Entry] 2Version=1.0 3Type=Application 4Name=显示的程序名 5Icon="/path-to/图标文件" 6Exec="/path-to/执行程序" %f 7Path="/path-to/" (可选) 8NoDisplay=false (true则不会在系统菜单中出现) 9Categories=Utility; 10StartupNotify=false 11Terminal=false
其关键在于
Exec=
行中的%f
将文件路径传递给执行程序。
Exec=
也可以没有绝对路径直接使用命令,Icon=
也可以不用路径而直接写系统认可的图标名称。
放程序.desktop
文件到~/.local/share/applications/
-
设置用某程序打开MIME类型文件
修改~/.config/mimeapps.list
或~/.local/share/applications/mimeapps.list
(废弃)1[Added Associations] 2application/x-扩展名=程序.desktop;其他程序.desktop;其他程序2.desktop;
其中
application/x-扩展名
是你刚刚所创建的MIME类型。如果MIME类型是原有的不是刚刚创建的,替换为原有的MIME类型名称。
参考
https://wiki.archlinux.org/index.php/Default_applications#MIME_database
本博客文章皆属原创(除特别标明外)。 未联系作者获得同意前,不可转载。
All articles are original (except for those specially claimed) and copyrighted. Copying without permission is forbidden.
All articles are original (except for those specially claimed) and copyrighted. Copying without permission is forbidden.
打赏作者
写作不易,感谢支持! 扫个码吧~