我知道 PowerShell 和 .NET 之间存在关系,但我无法通过 Google 找到详细信息。我能够设置一个没有 PowerShell 或 .NET 的全新 Linux 实例,然后只安装 PowerShell。PS cmdlet 正常工作。当我查看 .NET 运行时时,没有列出任何内容。
问题:
- PowerShell 和 .NET 之间的关系/映射是什么?
- 是否有显示映射的文档?
- 您是否安装了多个 .NET 运行时,其中哪一个由 PowerShell 使用?
====================================
更新
我根据以下答案创建了一个后续问题: PowerShell 7.0 / 7.1 和 .NET 运行时
答案1
Windows PowerShell 系统要求
公共语言运行时 4.0
Windows PowerShell 3.0、Windows PowerShell 4.0 和 Windows PowerShell 5.0 都是针对公共语言运行时 (CLR) 4.0 进行编译的。
Windows PowerShell 引擎要求
Windows PowerShell 2.0 引擎的最低要求是 Microsoft .NET Framework 2.0.50727。Microsoft .NET Framework 3.5 Service Pack 1 满足此要求。
几乎所有内容都将使用 CLR 4.0,除非模块清单指定 CLR 2 或您使用 -Version 2.0 开关启动 PowerShell。
powershell -version 2.0
Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.
PS > $PSVersionTable
Name Value
---- -----
CLRVersion 2.0.50727.9151
BuildVersion 6.1.7600.16385
PSVersion 2.0
WSManStackVersion 2.0
PSCompatibleVersions {1.0, 2.0}
SerializationVersion 1.1.0.1
PSRemotingProtocolVersion 2.1