• Linux关联文件扩展名和打开程序


    手动为Linux关联文件扩展名与打开程序。

    当Linux不认识某种扩展名的时候,需要为此扩展名创建一个MIME类型。Linux是依据MIME类型而不是扩展名来决定打开程序的。

    再将此种MIME类型与某程序菜单项关联。

    手动关联步骤

    1. 为扩展名建造一个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
      
    2. 为程序建造一个菜单项

      如果此程序已经有菜单项,略过这一步。

      创建程序.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/

    3. 设置用某程序打开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

    如果本文帮到你,请点一下”推荐“,谢谢!
    版权所有 本博客文章皆属原创(除特别标明外)
    未联系作者获得同意前,不可转载
    转载必须附上源地址,并连我博客上的宣传内容一并转载

    打赏作者

    写作不易,感谢支持!
    打赏链接
    

  • 相关阅读:
    LinqExtensions
    CsvWriter
    循环遍历清理Kubernetes中异常的pod
    Kubernetes存储——rook-ceph
    Kubernetes存储——glusterfs(集群)
    Linux环境变量配置
    Kubernetes存储——ceph(集群)
    Kubernetes存储——NFS
    Kubernetes 亲和性调度
    ceph集群运维
  • 原文地址:https://www.cnblogs.com/garyw/p/12769264.html
Copyright © 2020-2023  润新知