AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 18418
In Process
Dima
Dima
Asked: 2010-12-22 11:12:42 +0800 CST2010-12-22 11:12:42 +0800 CST 2010-12-22 11:12:42 +0800 CST

如何设置“xdg-open”启动哪个应用程序?

  • 772

我已经运行update-alternatives了 GNOME首选应用程序选择的东西。并且都指向将 Chromium 浏览器作为默认浏览器。然而,当我运行时xdg-open http://askubuntu.com,Firefox 启动了!同样,Emacs和Bazaar ( bzr) 也在 Firefox 中而不是 Chromium 中启动东西。

是否有任何其他设置会影响 xdg-open 功能?

有些东西肯定坏了:

更新

我已经清除了 Firefox:

  • update-alternatives - 使用 Chromium 浏览器
  • sensible-browser - 打开 Chromium 浏览器
  • xdg-open & gnome-open - 使用 google-chrome 打开,它亲切地告诉我“它不是默认浏览器”

!!!!

chromium default-browser xdg-open
  • 5 5 个回答
  • 82554 Views

5 个回答

  • Voted
  1. Ferry Boender
    2018-07-25T06:26:50+08:002018-07-25T06:26:50+08:00

    以上所有答案基本上都是正确的,具体取决于您在做什么以及您使用的程序如何调用事物。对我来说,问题是我的终端模拟器(Tilix)仍然打开了错误的浏览器(Firefox 而不是 Chrome),并且xdg-open foobar.html还打开了错误的浏览器。

    最终我发现还有xdg-mime:

    xdg-mime query default x-scheme-handler/http
    firefox.desktop
    xdg-mime query default x-scheme-handler/https
    firefox.desktop
    

    这是不正确的,所以我将其更改为:

    xdg-mime default google-chrome.desktop 'x-scheme-handler/http'
    xdg-mime default google-chrome.desktop 'x-scheme-handler/https'
    

    然后还有'text/html'的绑定,我也改变了:

    xdg-mime default google-chrome.desktop 'text/html'
    

    这与确保以下内容也正确设置相结合:

    • 环境BROWSER变量
    • sensible-browser( /usr/bin/sensible-browser,一个包装脚本,试图启动此列表中的其他一些项目)
    • gnome-www-browser( /usr/bin/gnome-www-browser, 符号链接/etc/alternatives/gnome-www-browser)
    • x-www-browser( /usr/bin/x-www-browser, 一个符号链接到/etc/alternatives/x-www-browser
    • www-browser( /usr/bin/www-browser, 符号链接/etc/alternatives/www-browser)
    • update-alternatives --get-selections指向浏览器的所有“替代”条目(请参阅列表)。
    • GConf 数据库(参见@Isaiah 的回答)

    这最终在我的桌面上为大多数情况打开了正确的浏览器。2018 年无疑是桌面 Linux 的一年。

    • 12
  2. Isaiah
    2010-12-22T11:25:17+08:002010-12-22T11:25:17+08:00

    Chromium 在其首选项中还有一个选项可以使其成为默认浏览器:

    替代文字

    这应该有效,但如果没有,请继续阅读:

    GConf数据库中有几个键确定由哪个浏览器启动xdg-open:

    • /desktop/gnome/url-handlers/unknown/command
    • /desktop/gnome/url-handlers/http/command
    • /desktop/gnome/url-handlers/https/command
    • /desktop/gnome/url-handlers/about/command

    确保它们都设置正确:

    • 点击Alt+F2
    • 进入gconf-editor
    • 导航到上述键,它们应设置为/usr/bin/chromium-browser %s。

    替代文字

    • 6
  3. mackuz
    2012-11-22T00:18:11+08:002012-11-22T00:18:11+08:00

    在我的情况下,我安装了 Chromium 并将其设为默认值。在此之前,Chrome 是默认浏览器。

    我尝试了我能做的所有事情:设置 Chromium 默认浏览器,更改gconf设置以使用%U变量(https://askubuntu.com/a/41085/94263)运行 Chromium,更改替代方案以使用 Chromium 作为默认x-www -浏览器(https://askubuntu.com/a/24052/94263),但没有任何帮助,xdg-open打开新的 Chromium 窗口,起始页无法打开给定的链接,明智的浏览器打开了 Chrome。我试图清除 Chrome(Chromium 在update-alternatives中自动设置为默认值和自动)并再次安装它,因为我需要从那里安装 Pepper flash,它变成了默认的 x-www-browser再次替代,再次使用sensible-browser命令打开。然后我用谷歌搜索了一些页面并引起了我对优先级的注意,还发现/etc/alternatives/中也有gnome-www-browser符号链接,并且google-chrome是默认的。Chrome 的优先级设置为200和 Chromium- 40。Google Chrome 的优先级更高,因此 update-alternatives 实用程序会自动将其安装为默认网络浏览器作为“更好的版本”。

    我已经从x-www-browser和gnome-www-browser中删除了 Chrome 和 Chromium :

    sudo update-alternatives --remove x-www-browser /usr/bin/google-chrome
    sudo update-alternatives --remove x-www-browser /usr/bin/chromium-browser
    sudo update-alternatives --remove gnome-www-browser /usr/bin/google-chrome
    sudo update-alternatives --remove gnome-www-browser /usr/bin/chromium-browser
    

    然后我安装了具有其他优先级的新替代方案:

    sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/google-chrome 40
    sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/chromium-browser 200
    sudo update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /usr/bin/google-chrome 40
    sudo update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /usr/bin/chromium-browser 200
    

    我不知道所有计算机的默认优先级是“40”还是“200”,否则您会有其他数字。最好先进入

    sudo update-alternatives --display x-www-browser
    sudo update-alternatives --display gnome-www-browser
    

    更新。我试图在完全不同的系统上做同样的事情,优先级和这里一样。

    更新2。如果您只运行一次 google-chrome,它会将其优先级更改回200,但 chromium-browser 将保持默认设置。

    这对我有用。Chromium 已自动设置为默认值,并且sensible-browser正在启动 Chromium。但仍然xdg-open正在打开新的空白窗口。

    • 5
  4. karthick87
    2010-12-22T11:20:46+08:002010-12-22T11:20:46+08:00

    sensible-browser是从终端启动默认 Web 浏览器的命令。

    • 1
  5. Adrian Lopez
    2015-10-10T08:10:26+08:002015-10-10T08:10:26+08:00

    对我来说,解决方案是运行这两个命令。然后,您只需从列表中选择所需的浏览器。

    sudo update-alternatives --config x-www-browser
    sudo update-alternatives --config gnome-www-browser
    

    资料来源:启动板、 Bugzilla

    • 0

相关问题

  • 如何在铬上安装 Windows 媒体播放器插件?

  • 如何解决“gdk-pixbuf/gdk-pixbuf.h:没有这样的文件或目录”

  • apt-build & Chromium PPA

  • 随着 Xmarks 的关闭,有什么好的选择?

  • 铬不起作用

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何安装 .run 文件?

    • 7 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    如何获得 CPU 温度?

    • 21 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Marko Smith

    你如何重新启动Apache?

    • 13 个回答
  • Marko Smith

    如何卸载软件?

    • 11 个回答
  • Marko Smith

    如何删除 PPA?

    • 26 个回答
  • Martin Hope
    NES 如何启用或禁用服务? 2010-12-30 13:03:32 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    Olivier Lalonde 如何在结束 ssh 会话后保持进程运行? 2010-10-22 04:09:13 +0800 CST
  • Martin Hope
    David B 如何使用命令行将用户添加为新的 sudoer? 2010-10-16 04:02:45 +0800 CST
  • Martin Hope
    Hans 如何删除旧内核版本以清理启动菜单? 2010-08-21 19:37:01 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve