具有兼容 PowerShell 版本或操作系统的包
从版本 5.1 开始,PowerShell 提供了各种版本,表现出不同的功能集和平台兼容性。
按 PowerShell 版本搜索
两个 PowerShell 版本是:
- 桌面版: 以 .NET Framework 为基础构建,提供与面向在完整功能 Windows 版本(如服务器核心和 Windows 桌面)上运行的 PowerShell 版本的脚本和模块的兼容性。
- 核心版: 以 .NET Core 为基础构建,提供与面向在缩减功能 Windows 版本(如 Nano Server 和 Windows IoT)上运行的 PowerShell 版本的脚本和模块的兼容性。
PowerShell 库允许筛选对特定 PowerShell 版本兼容的包
如果某个包已指定兼容的 PSEditions,则会在包显示页和包结果中将其列为“PowerShell 版本”的一部分。 还可以使用 PowerShell 搜索兼容包。
在库 UI 中搜索在 PowerShell 6 及更高版本上工作的包
使用标记“PSEdition_Desktop”和标记“PSEdition_Core”筛选 PowerShell 库中的包。
使用标记“PSEdition_Core”搜索兼容 PowerShell 核心版本的项
使用标记“PSEdition_Desktop”搜索兼容 PowerShell 桌面版本的项
使用 PowerShell 搜索包以查找兼容版本
可以指定标记以针对 PowerShell 版本和操作系统进行筛选。 可使用 Find-Package
cmdlet,指定 -Tag
参数来指定作为目标的版本(和操作系统)。 类似于下面这样:
# Find modules compatible with PowerShell Core:
Find-Module -Tag PSEdition_Core
# Find modules compatible with PowerShell on Linux:
Find-Module -Tag PSEdition_Core, Linux
按操作系统搜索
由于 PowerShell 适用于 Windows、Linux 和 MacOS,因此可以针对这些操作系统的任意组合设计库中的包。 在库 UI 中,使用以下搜索标记查找按操作系统进行标记的包:
- 标记:“Windows”
- 标记:“Linux”
- 标记:“MacOS”
可以对 Find-Module
(以及 PowerShellGet 模块中的其他 cmdlet)指定这些标记,类似于下面这样:
# Find Modules compatible with Windows
Find-Module -Tag Linux
搜索多个兼容性
可以使用以下语法查找具有多个兼容性的包:
标记:"Compatibility1" "Compatibility2"
例如,如果要查找在 Windows 和 Linux 计算机上运行的包,请使用搜索标记:
标记:"PSEdition_Core" "Windows" "Linux"
若要使用 PowerShell 进行搜索,可以使用 Find-Module
(以及 PowerShellGet 模块中的其他 cmdlet),类似于下面这样:
# Find scripts compatible with PowerShell, Windows, and Linux
Find-Script -Tag PSEdition_Core,Linux,Windows
# Find modules compatible with PowerShell and MacOS
Find-Module -Tag PSEdition_Core,MacOS