我使用Windows 10的Linux子系统(Windows 10版本1803)
我可以使用命令行:
user@laptop:~$ wslpath -w /c/
C:\
但是当我尝试使用
user@laptop:~$ wslpath -w ~
wslpath: /home/user: Result not representable
即使我使用:
user@laptop:~$ wslpath -w /home/user
wslpath: /home/user: Result not representable
为什么? 如何将 /home/user 转换为 windows 路径?
我在 Windows 中的主文件夹路径是
C:\Users\winuser\AppData\Local\lxss\home
我希望某些命令行可以给我返回该字符串。
在 Windows 10 1809 中,我们(最终)提供了文件系统集成,允许您通过
\\wsl$
UNC 路径从 Windows 访问 WSL 发行版中的文件:
如果您对其工作原理感兴趣,请访问此博客文章:https://devblogs.microsoft.com/commandline/a-deep-dive-into-how-wsl-allows-windows-to -access-linux-files/
现在允许
wslpath
提供 Windows 可访问的发行版文件系统中的文件路径:
在即将推出的 Windows 10 May 2020 Update (2004) 中,您不必记住有点晦涩的 UNC 路径 - 相反,您只需单击文件资源管理器中的 Tux(Linux 企鹅)图标即可:
\\wsl$\
文件夹 - 有龙!
请阅读这篇文章:https://blogs.msdn.microsoft.com/commandline/2016/11/17/do-not-change-linux-files-using-windows-apps-and-tools/
本指南没有也不会改变,尽管随着时间的推移它会变得不那么重要:特别是,WSL2 不使用
%localappdata%\lxss\...
- 相反,它将您的 linux 文件存储在 EXT4 格式的 VHDX 文件中,为系统提供接近本机的 IO 性能。发行版的本地文件系统。
%localappdata%\lxss
。例如:
wslpath -w
(是的,答案就在问题中,但有些人,比如我,会直接跳到答案而不阅读问题。)OP 报告的问题在 WSL2 中不存在。
$ wslpath -w /mnt/c/Users
C:\Users
$ wslpath -w /usr/bin
\\wsl$\Debian\usr\bin
这将打开一个窗口。 您可以复制路径。