如何使用 Ubuntu.exe 应用程序运行特定的 WSL2 发行版?

如何使用 Ubuntu.exe 应用程序运行特定的 WSL2 发行版?

我一直在寻找一个安装多个 WSL2 Ubuntu 实例的好的解决方案。我可以从中做到这一点,cmd但我真的很喜欢 Ubuntu 应用程序及其视觉效果。

有几种替代方案,但我发现帖子和答案似乎是一个很好的解决方案,因为它复制了文件。不幸的是,这并没有像预期的那样工作,因为在ubuntu.exe更改后发行版将无法运行DistroName答案

我设法按照命令显示创建了多个发行版wsl -l。但我无法使用ubuntu.exe文件分别运行它们。

Ubuntu.exe您是否有使用应用程序/窗口运行特定 Ubuntu 发行版的好的解决方案?

答案1

简短回答: 启动默认发行版时看到的控制台ubuntu.exe以及运行wsl -d <otherUbuntuDistro> 应该是一样的。它们都使用旧版 Windows 控制台。实际上,在 Windows 中(至少在 Windows 10 中)执行控制台/终端输出的任何命令都使用此控制台。

您应该能够通过单击每个窗口左上角的图标并选择“属性”来看到这一点。您应该看到两者的配置对话框是相同的。

它们的方式有些微妙的差别配置默认情况下似乎如此。例如,在我的系统上(应该是默认的),CMD 默认为“Courier New”,但 Ubuntu 启动的 CMD 使用 Consolas。但实际上,除了标题栏中显示的 Ubuntu 图标外,这是我看到的唯一区别。


更多详情:

至于实际使用ubuntu.exe可执行文件启动您wsl --import编辑的发行版,可能不行。

ubuntu.exe就是所谓的“应用程序执行别名”——它是指向 App Store 安装的指针。如果您进入 Windows 设置,在“管理应用程序执行别名”区域,就会找到它。

您还可以使用 PowerShell 查看其位置(Get-Command ubuntu.exe).path。如果您检查位置(get-childitem (split-path -parent (get-command ubuntu.exe).path)),您会看到 Windows 将它们作为指向实际包目录的符号链接进行管理。

wsl.exe确实是替换命令,因为它可以处理您安装的任何发行版,就像您已经确定的那样。

但我认为,更好的方法是简单地使用新的 Windows 终端来启动和管理所有终端会话(所有 WSL 实例、CMD、PowerShell 等)。Windows 终端是:

  • 一个现代化的、基于标签的终端,最终旨在取代传统的 Windows 控制台
  • 微软项目
  • 功能丰富
  • 积极开发,定期发布新版本和新功能
  • 完全开源(Github 仓库
  • 计划用作 Windows 11 中的默认终端(替代 Windows 控制台),但据我所知此功能在发布时是否稳定仍有待确定。
  • 有搞笑的发行说明

其中一个很棒的功能是 Windows Terminal 将自动检测您的所有 WSL 实例并为它们添加菜单条目/配置文件(使用wsl -d <distroname>)。因此,您的每个 Ubuntu 发行版都将显示为单独的配置文件。如果您添加另一个(或删除一个),Windows Terminal 将在下次启动时选择它。

相关内容