![无法从 shell 启动浏览器 - 而是打开 VSCode](https://linux22.com/image/1184814/%E6%97%A0%E6%B3%95%E4%BB%8E%20shell%20%E5%90%AF%E5%8A%A8%E6%B5%8F%E8%A7%88%E5%99%A8%20-%20%E8%80%8C%E6%98%AF%E6%89%93%E5%BC%80%20VSCode.png)
当某些 shell 命令尝试启动我的浏览器时,我遇到了问题。下面的示例使用browse
命令,但与相同jupyter notebook
。看起来目标是在 VSCode 中打开的。
我在 pyenv 虚拟环境中使用 zsh 运行 Ubuntu 20.04。
谢谢!
~ browse askubuntu.com
command= "code" args= ("code", "http://askubuntu.com")
~ Copying QUrl("http://askubuntu.com/") to QUrl("file:///home/username/.cache/kioexec/krun/8292_0/unnamed")
Telling kioexecd to watch path "/home/username/.cache/kioexec/krun/8292_0/unnamed" dest "http://askubuntu.com/"
All files downloaded, will call slotRunApp shortly
EXEC "/snap/bin/code /home/username/.cache/kioexec/krun/8292_0/unnamed"
EXEC done
...然后 VSCode 将目标作为html
文件打开。
编辑:运行时出现同样的错误
xdg-open 'http://askubuntu.com'
编辑:
xdg-settings get default-web-browser
收益code-2.desktop
编辑:如果我这样做
xdg-settings set default-web-browser firefox.desktop
,不会引发任何错误,但它实际上并没有改变值(保持不变code-2.desktop
)编辑:
$BROWSER askubuntu.com
工作正常已解决:感谢@Koen,我进入系统设置/应用程序/默认应用程序(我在 KDE 上)--> Web 浏览器 --> 在“以下应用程序中打开 http 和 https URL:Firefox”,而不是“在基于 URL 内容的应用程序中”
答案1
xdg-settings 默默失败 - echo $? 可以显示失败时的返回代码不是 0
返回代码:
1 命令行语法错误。2
命令行中传递的其中一个文件不存在。3
找不到所需工具。4
操作失败。
浏览是 xdg-open 的链接 - 因此您需要提供一个 URL 来打开默认浏览器
也可以通过 GUI 工具设置默认浏览器
- gnome:gnome-control-center - 默认应用程序 - web
- KDE:系统设置/应用程序/默认应用程序 --> Web 浏览器 --> 在以下应用程序中打开 http 和 https URL“:Firefox”
答案2
你忘记了 http://,它定义你浏览的是一个网站而不是一个文件。当你单独输入“浏览”时,你得到的是
xdg-open - opens a file or URL in the user's preferred application
尝试browse http:/google.com
这应该可以解决这个问题。