如何从 WSL shell 的当前工作目录打开 Windows 资源管理器?

如何从 WSL shell 的当前工作目录打开 Windows 资源管理器?

当我在 Windows 资源管理器地址栏中输入“bash”并按 Enter 键时,它会在该目录中打开 shell。我经常发现自己想使用通过 shell 到达的工作目录中的 Windows 程序处理文件。有没有一种简单的方法可以从通过 shell 到达的位置打开资源管理器?

答案1

在资源管理器中打开当前目录- 使用以下内容(WSL 自行设置 Windows 路径):

explorer.exe .

你可以设置别名使用.bashrc自定义命令:

echo 'alias explorer="explorer.exe ."' >> ~/.bashrc
source ~/.bashrc

现在只需使用:

explorer 

在 Windows 资源管理器中打开当前工作目录。

答案2

微软wslpath为此目的提供了一个二进制文件。

explorer.exe `wslpath -w "$PWD"`

抄袭自Github 问题询问使用信息,有 4 个选项 - -a-u-w-m

wslpath usage:
    -a    force result to absolute path format
    -u    translate from a Windows path to a WSL path (default)
    -w    translate from a WSL path to a Windows path
    -m    translate from a WSL path to a Windows path, with ‘/’ instead of ‘\\’

    EX: wslpath ‘c:\users’

答案3

对于 WSL2,你可以像这样从 Windows 访问主目录:

\\wsl$

抱歉我参加聚会迟到了!

答案4

我创建了一个名为“eopen轻松打开资源管理器”的小工具。 https://github.com/ko1nksm/eopen

Usage: eopen [options] [file | directory | uri]

options:
  -e, --editor      Open the file in text editor ($EOPEN_EDITOR)
  -n, --new         Open the specified directory in new instance of explorer
      --sudo        Use sudo to write the unowned file
  -v, --version     Display the version
  -h, --help        You're looking at it

note:
  The file or the directory allows linux and windows path.
  (e.g. /etc/hosts, C:/Windows/System32/drivers/etc/hosts)

  The uri must start with protocol schema. (e.g http:, https:)

这里还有另一种解决方案。 https://github.com/4U6U57/wsl-open

相关内容