WSL 与 Windows 互相访问教程
以下教程将介绍如何在 WSL 和 Windows 系统之间互相访问文件并实现无缝交互。
一、Windows 访问 WSL 文件
方法 1:通过网络路径访问
WSL 文件系统挂载在 Windows 网络路径 \\wsl$
下,可以直接访问。
打开文件资源管理器或命令行: 在地址栏或命令行输入以下路径:
\\wsl$\<发行版名称>\
例如:
\\wsl$\Ubuntu\home\<用户名>
直接访问 WSL 文件:
文件资源管理器中可以像操作普通文件夹一样管理文件。
在命令行中可以使用:
cd \\wsl$\Ubuntu\home\<用户名> dir
优点:
- 直接访问,无需额外配置。
- 文件路径自动挂载,无权限问题。
方法 2:通过挂载路径访问
WSL 的文件系统实际上存储在 Windows 用户目录下:
C:\Users\<用户名>\AppData\Local\Packages\<WSL发行版ID>\LocalState\rootfs
操作步骤:
定位路径: 打开资源管理器,导航到上述路径。
通过命令行访问:
cd "C:\Users\<用户名>\AppData\Local\Packages\<发行版ID>\LocalState\rootfs"
注意:
- 不要直接修改
LocalState
下的文件,可能导致 WSL 文件系统损坏。 - 尽量使用
\\wsl$
路径,安全可靠。
方法 3:通过 WSL 挂载目录
WSL 可以直接挂载 Windows 文件系统,访问路径为 /mnt/<盘符>
。
在 WSL 中访问:
cd /mnt/c/Users/<用户名>/Documents
常见操作:
列出文件:
ls /mnt/c/Users/<用户名>/Documents
复制文件到 WSL:
cp /mnt/c/Users/<用户名>/Documents/文件.txt ~/
二、WSL 访问 Windows 文件
默认挂载的文件路径
WSL 会自动挂载 Windows 的文件系统,所有分区挂载在 /mnt/<盘符>
下。例如:
C:\
对应/mnt/c
D:\
对应/mnt/d
列出 Windows 文件:
ls /mnt/c/Users/<用户名>/Documents
复制文件到 WSL:
cp /mnt/c/Users/<用户名>/Documents/文件.txt ~/wsl目录/
移动文件到 Windows:
mv ~/wsl目录/文件.txt /mnt/c/Users/<用户名>/Desktop/
三、实现 WSL 和 Windows 共享目录
方法 1:在 WSL 中创建软链接
如果频繁需要访问某些 Windows 目录,可以通过软链接简化路径。
创建链接:
ln -s /mnt/c/Users/<用户名>/Documents ~/windows-documents
访问链接: 直接进入:
cd ~/windows-documents
方法 2:共享 WSL 的目录给 Windows
可以通过设置 WSL 中的目录,让 Windows 使用 \\wsl$
访问。
在 WSL 中创建目录:
mkdir ~/shared-folder
在 Windows 中访问: 打开资源管理器,导航到:
\\wsl$\Ubuntu\home\<用户名>\shared-folder
四、在 WSL 和 Windows 间传输文件
方法 1:直接复制文件
可以使用 cp
或 mv
命令实现文件复制或移动。
从 WSL 复制文件到 Windows:
cp ~/文件.txt /mnt/c/Users/<用户名>/Desktop/
从 Windows 复制文件到 WSL:
cp /mnt/c/Users/<用户名>/Desktop/文件.txt ~/
方法 2:使用 explorer.exe
打开 WSL 文件夹
在 WSL 中可以直接使用 Windows 的资源管理器访问当前目录:
在 WSL 终端中输入:
explorer.exe .
Windows 文件资源管理器会打开 WSL 当前路径。