在最近的更新之前,WSL根文件系统总是在C:\Users\%username%\AppData\Local\lxss
中,但是现在,当从应用商店安装Linux时,每个安装可能会有所不同。例如,在我的机器上,Ubuntu是C:\Users\%username%\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs
有没有办法从当前的WSL会话中检测到此路径?
发布于 2017-10-23 17:53:04
在PowerShell中:
> echo ($env:LOCALAPPDATA + '\Packages\' + ($(get-appxpackage).PackageFamilyName|findstr UbuntuonWindows))
C:\Users\Reker\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
您可以通过与Windows cmd.exe或powershell.exe进行互操作,在Windows14393或更高版本的bash.exe中运行上述命令
发布于 2018-07-29 08:35:22
正如其他用户所指出的,现在您可以安装多个Linux发行版,每个发行版都在不同的文件夹中有自己的文件系统。可以从Windows注册表中获取每个文件系统的位置。
您可以运行regedit
并查找信息。数据位于以下位置
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss
此外,您可以启动一个PowerShell窗口并执行以下命令,以确定所有已安装的Linux发行版的信息。
(Get-ChildItem "HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss" -Recurse)
要获取文件系统的位置,可以运行以下命令
(Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss | ForEach-Object {Get-ItemProperty $_.PSPath}) | select DistributionName,BasePath
https://stackoverflow.com/questions/46877300
复制相似问题