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;

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

相关推荐
赖small强3 分钟前
【Linux 网络基础】libwebsockets 技术文档
linux·网络·https·tls·lib·websockets
6***x54511 分钟前
C++在计算机视觉中的图像处理
c++·图像处理·计算机视觉·游戏引擎·logback·milvus
fpcc14 分钟前
跟我学C++中级篇——内存访问违例
c++
E***q53922 分钟前
C++内存对齐优化
开发语言·c++
D_evil__23 分钟前
[C++高频精进] 文件IO:文件操作
c++
q***518924 分钟前
ubuntu 安装 Redis
linux·redis·ubuntu
q***47181 小时前
使用Canal将MySQL数据同步到ES(Linux)
linux·mysql·elasticsearch
别动哪条鱼2 小时前
MP4转AAC转换器C++
c++·ffmpeg·音视频·aac
2301_807997382 小时前
代码随想录-day47
数据结构·c++·算法·leetcode
李日灐2 小时前
手搓简单 string 库:了解C++ 字符串底层
开发语言·c++