11

I use Linux subsystem of windows 10(windows 10 version 1803)

I can use command line:

user@laptop:~$ wslpath -w /c/
C:\

But when I try to use

user@laptop:~$ wslpath -w ~
wslpath: /home/user: Result not representable

Even I use:

user@laptop:~$ wslpath -w /home/user
wslpath: /home/user: Result not representable

why? how to translate the /home/user to windows path?

my home folder path in windows is C:\Users\winuser\AppData\Local\lxss\home

I expect some command line can give me return that string.

4

2 回答 2

18

针对 Windows 10 1809 或更高版本用户的更新指南:

在 Windows 10 1809 中,我们(最终)提供了文件系统集成,允许您通过\\wsl$UNC 路径从 Windows 访问 WSL 发行版中的文件:

在此处输入图像描述

如果您对它的工作原理感兴趣,请访问此博客文章:https ://devblogs.microsoft.com/commandline/a-deep-dive-into-how-wsl-allows-windows-to-access -linux-文件/

这现在允许wslpath为您的发行版文件系统中的文件提供 Windows 可访问的路径:

在此处输入图像描述

在即将到来的 Windows 10 May 2020 更新 (2004) 中,您不必记住有些晦涩的\\wsl$\UNC 路径 - 您只需单击文件资源管理器中的 Tux(Linux penguin)图标:

在此处输入图像描述

WSL1 用户的警告:

不要尝试%localappdata%\lxss\...从 Windows 搜索包含 WSL1 Linux 文件的文件夹 - 有龙!

请阅读这篇文章: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 性能。

于 2018-11-29T22:15:07.957 回答
7

要将 WSL Linux 路径转换为 ​​Windows 路径,请使用wlspath -w. 例如:

$ wslpath -w /mnt/c/Users
C:\Users
$ wslpath -w /usr/bin
\\wsl$\Debian\usr\bin

(是的,答案在问题中,但有些人,比如我,会直接跳到答案而不阅读问题。) OP 报告的问题在 WSL2 中不存在。

于 2021-03-11T16:09:17.020 回答