如何更改 wslpath 的根位置?

如何更改 wslpath 的根位置?

当我将 Windows 路径粘贴到 WSL 控制台窗口中时,它会自动转换为 WSL 路径,例如C:\Windows粘贴为/mnt/c/Windows.

然而,这并不反映root设置/etc/wsl.conf

例如,我编辑/etc/wsl.conf并替换行root = /mnt/root = /然后Restart-Service -Name "LxssManager"在 Powershell 中运行并重新启动 WSL。

现在 Windows 驱动器直接挂载到 root 中/c/,如/d/等,但粘贴C:\Windows仍然会导致/mnt/c/Windows.我怎样才能改变这个以便它粘贴/c/Windows

据我了解,实际处理翻译的实用程序是,wslpath但我找不到如何配置它。

答案1

当我将 Windows 路径粘贴到 WSL 控制台窗口时,它会自动转换为 WSL 路径

为了清楚起见,有两个默认WSL 可能使用的终端:

  • 在 Windows 10 下,旧版 Windows 控制台主机
  • 在 Windows 11 下(如果已配置),Windows 终端

除非我遗漏了一些东西,否则这些都不会执行您提到的路径翻译。 Windows 控制台主机太旧了,除了 UTF-8 支持之外,已经有好几年没有新功能了。 Windows Terminal 有一个突出的功能要求(第1772章) 为了这。

根据该问题的评论,我认为您可能正在使用康埃穆或者指挥者(基于ConEmu)终端。 Windows 到 POSIX 路径转换是这些终端的一项功能。

如果是这种情况,要更改使用的路径前缀,请转到设置->任务并编辑用于启动 WSL 的任务。更改(或添加):

-cur_console:pm:""

空字符串将删除前缀,以便它将粘贴为/c/Windows而不是/mnt/c/Windows

这个问题和引用的文档页

相关内容