推荐方法是:WSL 2用\wsl.localhost发行版名挂载访问,WSL 1用\wsl$或物理路径;从WSL传文件统一用/mnt/c/等挂载路径;双向软链接可提升效率。

在Windows系统中让WSL子系统与宿主机之间快速互传文件,是日常开发、日志分析或脚本调试的刚需操作。路径不对会找不到文件,权限错乱会导致复制失败,跨WSL版本(1/2)选错方法还会拖慢十倍速度。
从Windows往WSL里传文件
方法一:用\wsl.localhost发行版名挂载访问(推荐,WSL 2专用)
第一步:确保WSL已运行,打开Windows资源管理器,在地址栏输入\wsl.localhostUbuntu-18.04(将“Ubuntu-18.04”换成你实际安装的发行版名称,可用wsl -l -v确认)→ 回车;
第二步:进入该网络位置后,直接打开home或tmp等目录,把Windows上的文件拖进去即可;
第三步:在Ubuntu终端中执行ls ~/或ls /tmp/验证文件是否存在。
⚠️注意:此路径仅在WSL 2下生效,WSL 1不支持\wsl.localhost,强行访问会提示“找不到网络路径”。
方法二:直接复制到WSL的rootfs物理路径(仅限WSL 1,且需谨慎)
在Windows资源管理器地址栏输入:C:Users你的用户名AppDataLocalPackagesCanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgscLocalState
ootfshome你的Linux用户名 → 回车;
把文件粘贴进去,Ubuntu终端中就能立刻看到。
⚠️重要提醒:【不要在WSL正在运行时手动修改rootfs下的文件】——尤其不能删、重命名或移动rootfs目录本身,否则可能导致子系统损坏无法启动。
从WSL往Windows里传文件
这是最稳定、兼容性最强的操作,所有WSL版本都支持。
第一步:在Ubuntu终端中,使用cp或mv命令,把目标文件复制到/mnt/c/Users/你的Windows用户名/下的任意子目录,例如:cp ~/project.zip /mnt/c/Users/Jane/Downloads/;
第二步:打开Windows资源管理器,进入C:UsersJaneDownloads,文件已就位;
第三步:如需传到D盘,路径为/mnt/d/,E盘为/mnt/e/,以此类推——/mnt/下挂载的是所有Windows可识别的本地磁盘分区。
进阶技巧:建立双向软链接提升效率
如果你频繁在C:UsersMeProjects和~/projects之间同步代码,可以一步打通:
在Ubuntu终端中执行:ln -s /mnt/c/Users/Me/Projects ~/win-projects;
之后在Linux里访问~/win-projects就等于直接操作Windows的Projects文件夹;
同理,想让Windows也能快速访问Linux的常用目录,可在Windows资源管理器中右键→“新建快捷方式”,目标地址填:\wsl.localhostUbuntu-18.04homeyournamework(WSL 2)或C:UsersyournameAppDataLocalPackages...
ootfshomeyournamework(WSL 1)。











