Linux下的文件关联

文章目录 (?) [+]

    根据 MIME 类型关联

    ① 查看文件 MIME 类型

    xdg-mime query filetype <your-file-path>
    
    # 或者
    
    mimetype <your-file-path>
    
    # 或者
    
    file -i <your-file-path>

    ② 查询打开某类文件的默认程序

    gio mime <mime-type>
    
    # 或者
    
    xdg-mime query default <mime-type>

    ③ 设置打开某类文件的默认程序

    gio mime <mime-type> <application>
    
    # 或者
    
    mimeopen -d <your-file-path>
    
    # 或者
    
    xdg-mime default <application> <mime-type>

    ④ 使用示例

    choi@lanseyujie:~/Desktop$ xdg-mime query filetype Complete_NGINX_Cookbook.pdf 
    application/pdf
    choi@lanseyujie:~/Desktop$ gio mime application/pdf
    Default application for “application/pdf”: foxitreader.desktop
    已注册的应用程序:
    	foxitreader.desktop
    	gimp.desktop
    	krita_pdf.desktop
    	display-im6.q16.desktop
    推荐的应用程序:
    	foxitreader.desktop
    	gimp.desktop
    	krita_pdf.desktop
    	display-im6.q16.desktop
    choi@lanseyujie:~/Desktop$ gio mime application/pdf foxitreader.desktop
    Set foxitreader.desktop as the default for application/pdf


    根据后缀名关联

    ① 创建新的 MIME 类型,此处以为 *.tvs 文件为例,*.tvs 是 TeamViewer 的录制的视频文件(当然了这个仅仅是演示,目前的 TeamViewer 被唤起后并不能主动播放文件),使用 mimetype 命令查看得知其本质为 text/plain 类型,需要为其设置新的 MIME 类型以便进行关联。

    cd ~/.local/share/mime/packages
    nano application-x-tvs.xml
    
    # 写入如下内容
    
    <?xml version="1.0" encoding="UTF-8"?>
    <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
      <mime-type type="application/x-tvs">
        <glob pattern="*.tvs"/>
        <comment>TeamViewer Screen Record</comment>
      </mime-type>
    </mime-info>
    
    
    # 更新 MIME 数据库
    update-mime-database ~/.local/share/mime

    ② 创建关联的应用程序启动图标

             如果没有启动图标,推荐使用 menulibre 来辅助创建,参考《Deepin常见问题及优化技巧》中的 启动器菜单编辑 一节进行安装。

    ③ 关联默认使用的程序

    nano ~/.config/mimeapps.list
    
    [Added Associations]
    application/x-tvs=com.teamviewer.TeamViewer.desktop;

    ④ 关联文件类型图标

            将图标命名为 application-x-tvs 按不同尺寸放在 ~/.local/share/icons/hicolor/mimetypes/<icon-size>/ 或 /usr/share/icons/hicolor/<icon-size>/mimetypes/ 文件夹里重启一下 dde-desktop 进程即可生效。

    killall dde-desktop


    本文标题:Linux下的文件关联
    本文链接:https://lanseyujie.com/post/file-association-under-linux.html
    版权声明:本文使用「署名-非商业性使用-相同方式共享」创作共享协议,转载或使用请遵守署名协议。
    点赞 0 分享 0
    上一篇:汶川,十年