Ubuntu WSL中打开链接与路径的默认设置及恢复方法咨询
Ubuntu WSL中打开链接与路径的默认设置及恢复方法咨询
兄弟我刚好碰到过一模一样的问题,给你详细捋一捋:
刚安装的Ubuntu WSL默认行为
刚装好的Ubuntu WSL是靠和Windows的集成机制实现这些操作的:
- 运行
open .(本质是调用xdg-open,很多WSL环境里open是它的别名)时,WSL会把当前Linux路径转换成对应的Windows路径,直接唤起Windows文件资源管理器打开 - 运行
open https://example.com时,同样通过WSL的集成逻辑,直接调用你的Windows默认浏览器打开链接,完全不会用到Linux下的终端浏览器
装Lynx后为啥变了?
Lynx安装时会自动修改WSL里xdg-open的MIME类型关联配置,把HTTP/HTTPS这类网络链接的默认打开程序改成自己,甚至可能影响文件夹的打开方式,所以之后再用open命令就会默认启动Lynx了。
恢复默认设置的方法
这里给你两种靠谱的解决办法:
方法一:重置用户级MIME配置(最简单)
直接删除用户目录下的自定义MIME配置文件,让系统回到默认状态:
rm ~/.config/mimeapps.list
删完后再测试open .或者打开链接,应该就回到调用Windows应用的状态了。
方法二:手动指定默认应用
如果第一种方法没生效,就手动给xdg-open指定默认处理程序:
先查看当前的默认关联(确认是不是Lynx搞的鬼):
xdg-mime query default x-scheme-handler/http xdg-mime query default x-scheme-handler/https xdg-mime query default inode/directory正常会显示
wslview.desktop这类WSL集成相关的桌面项,如果显示lynx.desktop就说明确实是Lynx改了配置。手动设置回默认:
# 设置网页链接默认用Windows浏览器打开 xdg-mime default wslview.desktop x-scheme-handler/http xdg-mime default wslview.desktop x-scheme-handler/https # 设置文件夹默认用Windows资源管理器打开 xdg-mime default wslview.desktop inode/directory执行完这些命令后,再测试
open命令应该就恢复正常了。
补充一句:如果你的WSL里没有wslview,可以试试直接关联explorer.exe,不过一般Ubuntu WSL默认都自带wslview,它是专门处理跨Windows和Linux打开操作的工具。
备注:内容来源于stack exchange,提问作者RVRX




