PowerShell Gallery vs NuGet Gallery vs MSI vs管理单元

PowerShell Gallery vs NuGet Gallery vs MSI vs管理单元,powershell,module,nuget,Powershell,Module,Nuget,我对这里的差异感到困惑,希望能澄清一下 我认为在PowerShell 1.0中,有模块(在PowerShell中编写的命令)和管理单元(实现cmdlet和提供程序的动态链接库)。但是,由于模块可以包含cmdlet和模块中的函数可以调用的DLL,因此这些线变得模糊,因此最终管理单元现在实际上是冗余的 然后是NuGet软件包,它似乎是某种软件包部署系统(由Microsoft构建??)。这并不像PowerShell Gallery那样是特定于PowerShell的,NuGet软件包可以将任何类型的功能

我对这里的差异感到困惑,希望能澄清一下

我认为在PowerShell 1.0中,有模块(在PowerShell中编写的命令)和管理单元(实现cmdlet和提供程序的动态链接库)。但是,由于模块可以包含cmdlet和模块中的函数可以调用的DLL,因此这些线变得模糊,因此最终管理单元现在实际上是冗余的

然后是NuGet软件包,它似乎是某种软件包部署系统(由Microsoft构建??)。这并不像PowerShell Gallery那样是特定于PowerShell的,NuGet软件包可以将任何类型的功能部署到Windows系统。将NuGet视为MSI的继承者作为包部署方法是否正确

因此,我们有PowerShell Gallery(仅适用于PowerShell模块)和NuGet(适用于任何内容,但也包含PowerShell包)。什么是包,它的定义与PowerShell上下文中的模块有何不同

然后,我注意到PowerShell有
*-Package
*-Module
cmdlet,因此您可以运行:

find-module *7zip*
find-package *7zip*
此处返回相同的四项,但这些cmdlet指向何处?如果运行
install module
是从PowerShell Gallery安装的模块,如果运行
install package
是从NuGet安装的等效软件包(不是模块,而是软件包,不管是什么!)

如果能对以上内容进行任何澄清,我将不胜感激,因为我发现很难找到所有这些东西的明确定义,以及它们之间的相互作用(事实上,对于我来说,安装和维护它们的最佳方式是什么?

相关:和。