从 wsl2 debian 打开文件资源管理器

Opening the file explorer from wsl2 debian

刚刚升级到带有 debian 发行版的 wsl2,我想从 windows 访问我的文件,经过一些搜索后,我对以下 link:

感到困惑

https://www.howtogeek.com/426749/how-to-access-your-linux-wsl-files-in-windows-10/

我按照 link 中的要求做了,以 root 身份登录,进入根文件夹并 运行 以下命令:

explorer.exe .

但输出是“bash: explorer.exe: command not found”,看起来应该可以,我已经在不同的位置尝试过它以及挂载的 c 驱动器,常规用户等等。

我的问题是,为什么它不起作用,我该如何解决?

恕我直言, 革命

  1. 运行 wsl.exe --list 来自 Powershell/CMD window 并获取发行版的确切名称
  2. 在资源管理器中转到 \wsl$\ 并检查您是否在那里看到您的发行版名称。如果不是 运行 wsl --shutdown,请再次启动发行版并重新检查
  3. 您将看到列出的所有 运行ning 发行版,单击以打开它的文件系统

您可以右键单击并将其映射为网络驱动器,以便于访问

如果您已经在终端的那个文件夹中,那么跟随 也可以工作

运行

echo 'PATH=$PATH:/mnt/c/windows' >> ~/.bashrc

并将其添加到 ~/.bash_aliases

alias start='/mnt/c/windows/explorer.exe'

> 为什么不起作用

explorer.exe 在 WSL2 Debian 的开箱即用 $PATH 中找不到。

https://www.howtogeek.com/426749/how-to-access-your-linux-wsl-files-in-windows-10/ 上的文章说明了使用 WSL2 打开文件资源管理器 Ubuntu。

WSL2 Ubuntu 有一些魔法可以将当前用户的 Windows %PATH% 附加到 Linux $PATH 但这似乎不是目前适用于 WSL2 Debian。似乎许多人更喜欢关闭这种魔法,例如How to remove the Win10's PATH from WSL

> 我该如何解决

一些选项

  • 在命令行指定完整路径,例如,/mnt/c/windows/explorer.exe .
  • 附加到当前会话的路径
PATH=$PATH:/mnt/c/windows
  • 通过添加到您的 ~/.bashrc 文件,附加到未来会话的路径,例如,
echo 'PATH=$PATH:/mnt/c/windows' >> ~/.bashrc
  • 编辑 ~/.bash_aliases 并创建一个别名
alias start='/mnt/c/windows/explorer.exe'

如果创建别名,您可以使用任何您喜欢的别名,例如探索explorer.exe。就我个人而言,我更喜欢使用 start 的别名,因为它与您在 CMD 或 PowerShell 提示符下键入的内容相匹配,例如start . 在文件资源管理器中打开当前目录。