可双击的应用程序位于 Windows 上的什么位置?

Pat*_*ant 6 filesystem automation windows-subsystem-for-linux

我正在 Ubuntu 上运行 WSL2。我希望能够通过语音命令打开 Ubuntu。

为此,我在 PC 上运行 Alexa Connect 来编写自动执行某些 PC 功能的任务。我需要做的就是链接 AC 应用程序中的文件路径,但无论我如何努力,我都找不到Ubuntu.exe或任何其他启动 Ubuntu 的东西。我唯一的选择是在“开始”菜单中单击它。

令我沮丧的是,在“开始”菜单中右键单击 Ubuntu 会弹出一些选项,但没有一个选项是“打开文件位置”。但是,如果我可以在“开始”菜单中单击它,则我的文件中的某处一定有一个可访问的可执行文件,我可以将其提供给 Alexa Connect。

谷歌已经向我展示了要查找的位置,并且文件夹目录都在谷歌告诉我它们应该在的位置,但是这些文件夹中没有为我显示任何文件,当然我已经选中了显示隐藏文件

Not*_*1ds 13

简短回答

wsl.exe或者wsl应该有效。它可以在 中找到C:\Windows\System32

更多详情

但如果我可以在开始菜单中单击它,则必须有一个可访问的可执行文件

嗯……Ubuntu 有但不是必须。从 Microsoft Store 安装的应用程序不是传统的 Windows“可执行文件”。它们是带有清单和资源的 Appx 包,并且不是使用传统的“命令行”启动的。有关该主题的一些“额外阅读”,请查看我对此超级用户问题的两个答案(是的,两个) 。但稍后再做——读完这里以获得“快速而肮脏”的答案。

Ubuntu确实.exe提供了一个被称为“应用程序执行别名”的“假”来启动 Store/UWP/Appx 应用程序/包。对于其他一些 WSL 发行版,这不是一个选项。如果您遇到过这个问题,答案就在我链接到的其他超级用户问题中。

但如果您没有找到ubuntu.exe,那么您很可能从商店安装了“版本化”Ubuntu。Microsoft Store 中(当前)有三个“版本”:

  • “Ubuntu”:没有版本号的“Ubuntu”始终是可用的最新 LTS 版本。在 20.04 发布之前,如果您要安装“Ubuntu”(没有版本),那么您将安装 18.04。现在,这安装了 20.04。其应用程序执行别名很简单ubuntu.exe。因为这对你不起作用,我猜你安装了另外两个之一。

    当 22.04 发布时(大概)它将更新为 22.04。但请注意,您的 WSL 实例不会自动更新;只是商店包。这有点令人困惑,我试图在这个答案中更好地解释它。

  • “Ubuntu 20.04”:始终安装 20.04,并且将始终安装 20.04,即使“最新”已更改。所以目前,“Ubuntu 20.04”和“Ubuntu”在您的系统上安装相同的东西。但是,应用程序执行别名不同 - ubuntu2004.exe

  • “Ubuntu 18.04”:曾经是最新版本,但由于它仍然是受支持的版本,因此仍然可以从商店安装。它的应用程序执行别名是ubuntu1804.exe.

  • “Ubuntu 16.04”:已从商店中删除,但某些系统可能仍然有它。

您可以通过转到“开始”菜单或“设置”中的“管理应用程序执行别名”来查看系统上的应用程序执行别名。您可以关闭别名,因此如果您发现您的 Ubuntu(无论版本如何)已关闭,只需重新启用它即可。

但在大多数情况下不要使用应用程序执行别名

话虽如此,通过ubuntu.exe或任何应用程序执行别名启动 WSL 是“旧方法”。该wsl.exe命令是日常使用的“替代品”。您应该能够运行wsl并启动 Ubuntu,假设它是您唯一安装的 WSL 实例。

如果您安装了多个实例,则可以使用wsl -d <distro>. 或者wsl -u root在您的实例中以 root 身份启动。 wsl --help将为您提供标志和选项的完整列表。