如何在 Ubuntu 16.04 中设置默认文档阅读器?

Luí*_*usa 8 command-line okular default-programs 16.04

很久以前,可以通过文件中的命令行设置默认应用程序~/.local/share/applications/defaults.list。但是这个文件已经不在了。

如何使用命令行将 Okular 设置为 Ubuntu 16.04 中的默认文档阅读器?

小智 10

据我所知,您可以通过 xdg-mime 设置默认应用程序。

xdg-mime default okular.desktop application/pdf
Run Code Online (Sandbox Code Playgroud)

要检查它是否有效:

xdg-mime query default application/pdf
Run Code Online (Sandbox Code Playgroud)


Luí*_*usa 1

默认应用程序似乎是在/usr/share/applications/defaults.list应用程序和文件之间的关联对中全局设置的。可以在文件中设置用户特定的文件关联~/.local/share/applications/defaults.list。该文件可能不存在(可能在全新安装 Ubuntu 后),但可以由用户创建。

我现在使用如下脚本将应用程序与文件类型关联起来。在此示例中,Okular 与所有文档类型相关联(替换 Evince)。

#!/bin/bash

if [ -e ~/.local/share/applications/defaults.list ]
then
    echo "The file exists"
    sed 's/evince/okular/' ~/.local/share/applications/defaults.list > ~/.local/share/applications/defaults.list
else
    echo "The file does not exist"
    sed 's/evince/okular/' /usr/share/applications/defaults.list > ~/.local/share/applications/defaults.list
fi
Run Code Online (Sandbox Code Playgroud)