Mik*_*ver 4 powershell powershell-core
随着 PowerShell Core 的发布,应用程序在使用托管自动化库 (system.management.automation) 时如何选择调用哪个版本的 Powershell(Powershell 5.x 或 PowerShell Core)?关于应该创建的运行空间的一些事情?或者也许是连接信息?
以下是与PowerShell SDK 相关的 NuGet 包的概述:改编自此处。
Microsoft.PowerShell.5.ReferenceAssemblies- 用于构建基于.NET Framework(仅限 Windows)的Windows PowerShell应用程序。
Microsoft.PowerShell.SDK- 用于构建PowerShell Core (v6+) 应用程序,基于.NET Core / 5+(跨平台)。
Dependencies部分,然后查阅第一个条目;例如,对于包版本7.2.0,所需的最低 .NET (Core) 运行时是net6.0.PowerShellStandard.Library-构建模块和主机  的兼容产品既Windows PowerShell和PowerShell核心(跨平台) -但注:
“PowerShell Standard 是一个参考程序集,旨在帮助开发人员创建将在 PowerShell 上运行的模块和 PowerShell 主机。参考程序集不包含实际实现,而是允许您仅使用存在于不同 PowerShell 版本中的 API。这意味着您仍然需要在 PowerShell 运行时中运行。 ”
要创建独立应用程序,请使用前两个包之一。
System.Management.Automation
至于通过远程处理针对特定版本/版本:
看到这个问题和答案
请注意,它从使用 PowerShell cmdlet的角度而不是 SDK的角度涵盖了远程处理,尽管您始终也可以通过 SDK 调用 cmdlet。
正如Lee Daily在评论中指出的那样,特定于版本的可执行文件名是:
powershell.exe- Windows PowerShell
pwsh.exe(Windows) / pwsh(类 Unix 平台) - PowerShell Core
| 归档时间: | 
 | 
| 查看次数: | 793 次 | 
| 最近记录: |