如何导入新的PowerShell cmdlet?

时间:2014-03-09 14:08:23

标签: powershell

我在C#编写了一个PowerShell cmdlet。

此时我在哪里复制图书馆?

如何将其导入PowerShell以便我可以使用它?

1 个答案:

答案 0 :(得分:1)

加载新cmdlet有两种方法。

  1. Import Cmdlets Using Modules。在这里,您可以将cmdlet DLL放入系统可识别的路径中,该路径允许您加载具有简单名称的模块(例如Import-Module MyModule),或者您可以将其放在需要指定的任意目录中完整路径(例如Import-Module C:\code\MyModule.dll)。如果您只有一个DLL而没有依赖项,那么您实际上可以如图所示给出DLL。但是,通常情况下,您还需要使用New-ModuleManifest创建清单(创建,例如,MyModule.psd1文件),然后将该psd1文件而不是dll传递给Import-Module

    < / LI>
  2. Create a Windows PowerShell Snap-in。这需要编写一个非常小的C#类,它提供了将cmdlet视为管理单元所需的粘合剂。然后,您必须使用installutil程序注册管理单元,最后使用Add-SnapIn加载管理单元。 (另见How to Register Snap-ins...

  3. 奇怪的是,几乎所有谈论编写cmdlet的文章都提出了管理单元方法,但这仅仅是因为PowerShell版本1以来该技术已经可用,而模块直到版本2才出现。我读过的所有内容,但是,基本上建议将管理单元方法弃用为更简单 - 更灵活的模块方法。