我问自己是否可以从较新的 Windows 版本导入 PowerShell 模块。
Windows 8 和 8.1 中的CMDLets*-NetAdapter
非常好,所以我也想在 Windows 7 中使用它们。不幸的是,它们需要 PowerShell 4.0。我设法升级了本地 PowerShell,发现它不包含 CMDlets。我在 Windows 8 上找到了模块的位置,并将其复制到我的 Windows 7 机器上。当我尝试Get-NetAdapter
在 Windows 7 上使用时,出现错误。错误如下:
Get-NetAdapter : invalid namespace
Get-NetAdapter
~~~~~~~~~~~~~~
+ CategoryInfo : MetadataError: (MSFT_NetAdapter:ROOT/StandardCim
v2/MSFT_NetAdapter) [Get-NetAdapter], CimException
+ FullyQualifiedErrorId : HRESULT 0x8004100e,Get-NetAdapter
有没有办法让这个或 Windows 8/Server 2012 中的其他较新的 CMDLets 在 Windows 7/Server 2008 上使用?
答案1
不可以,您不能这样做。许多 PowerShell 模块依赖于特定于操作系统的 WMI 命名空间。由于 Windows 7 中不存在这些命名空间,因此无法导入这些模块。
Powershell MVP Richard Siddaway在他的博客中详细介绍了这一点。