PowerShell 7.0 / 7.1 和 .NET 运行时

PowerShell 7.0 / 7.1 和 .NET 运行时

Microsoft Doc 中有一张表格,列出了 PowerShell 版本 3.0 至 5.1 所需的 .NET Framework 版本: https://docs.microsoft.com/en-us/powershell/scripting/windows-powershell/install/windows-powershell-system-requirements?view=powershell-7#microsoft-net-framework-requirements

在没有 PowerShell 或 .NET 的新 Linux 实例上安装 PowerShell 7.0 后,我注意到 PS cmdlet 正常工作。当我查看 .NET 运行时时,没有列出任何内容。当我运行$PS版本表它没有列出 CLR,而是列出以下内容:

PS /home/ubuntu> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.0.3
PSEdition                      Core
GitCommitId                    7.0.3
OS                             Linux 5.3.0-1035-aws #37-Ubuntu SMP Sun Sep 6 01:17:09 UTC 2020
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

这引发了几个问题:

  • PowerShell 7.0 和 7.1(目前正在开发)是否被视为“自给自足“已发布.NET Core 应用程序?
  • PowerShell 7.0 是否包含 .NET Core 3.1 的独立/嵌入版本?
  • PowerShell 7.1 是否包含 .NET 5.0 的独立/嵌入式版本?
  • 如果您安装其他版本的 .NET Core 或 .NET(例如 .NET 6.0 - 发布时)是否会对 7.0 或 7.1 产生影响,或者始终使用自包含/嵌入式版本?

答案1

这是文档的链接,其中列出了每个受官方支持的 Linux 发行版所依赖的软件包https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7#binary-archives

PowerShell 包将引用它们的依赖项,但如何获取它们取决于如何安装 PowerShell。

相关内容