PowerShell中的Add-PSSnapin和Import-Module有什么区别?

时间:2012-06-07 05:40:11

标签: powershell pssnapin import-module

  

可能重复:
  What’s the difference between Add-PsSnapIn and Import-Module

PowerShell中Add-PSSnapinImport-Module之间有什么区别?

最后,两者似乎都提供了相同的结果。

推荐的方法是哪一种?

1 个答案:

答案 0 :(得分:9)

PsSnapins 是旧方式(现有inPowerShell V1)添加CmdLet或提供商(但仍在使用中)

  • 他们需要注册(使用installutil.exe工具)
  • 它们是用.NET语言之一编写的程序集

模块是添加CmdLet或提供商的新方法(在PowerShel V2中添加)

  • 他们只需要在文件系统上可以连接(参见$ env:psmodulepath)
  • 它们可能是用PowerShell编写的脚本(仅适用于CmdLet),也可能是使用.NET语言之一编写的CmdLet和Providers的程序集
  • 它存在一个清单表单,允许指定有关创建者的大量信息,以及PowerShell版本,Framework版本或其他模块或程序集版本的依赖性。

    我认为您可以使用模块,除非您必须支持现有的PowerShell V1计算机。