CentosLinux7新增MimeType并创建文件关联

CentosLinux7新增MimeType并创建文件关联

Local

为扩展名新建一个MimeType

~/.local/share/mime/packages/路径下新建xml

cpp 复制代码
<?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> 

更新Mime数据库

cpp 复制代码
$ update-mime-database ~/.local/share/mime

已经对对应扩展名的文件新增一个MimeType

可以通过xdg-mime query filetype 对应后缀名文件名验证新建的MimeType

创建应用程序信息

创建.desktop文件,定义文件关联关系

cpp 复制代码
[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/

设置文件与应用程序关系

修改 ~/.config/mimeapps.list~/.local/share/applications/mimeapps.list

cpp 复制代码
[Added Associations]
application/x-扩展名=程序.desktop;其他程序.desktop;其他程序2.desktop;

完成 可以通过文件直接执行应用程序

相关推荐
许怀楠5 分钟前
【Linux】基础指令(下)
linux
云飞云共享云桌面6 分钟前
工厂办公环境如何实现一台服务器多人共享办公
运维·服务器·网络·数据库·3d
六点半8888 分钟前
【C++】C++11 篇二
开发语言·c++
DDDDDDDRDDR15 分钟前
C++容器:list
开发语言·c++·stl
一拳一个呆瓜18 分钟前
【MFC】对话框属性:Use System Font(使用系统字体)
c++·mfc
咕咚.萌西19 分钟前
RISC-V开发环境搭建
linux·硬件架构·risc-v
Elnaij20 分钟前
从C++开始的编程生活(7)——取地址运算符重载、类型转换、static成员和友元
开发语言·c++
zr52685544732 分钟前
ModbusTCP 转 Profinet 主站网关
运维·服务器·网络
郝学胜-神的一滴38 分钟前
Effective Modern C++ 条款26:避免在通用引用上重载
开发语言·c++·程序人生
草莓熊Lotso41 分钟前
【C++】递归与迭代:两种编程范式的对比与实践
c语言·开发语言·c++·经验分享·笔记·其他