答案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 将在下次启动时选择它。