系统似乎安装了两(2)版的PowerShellGet模块。
Script 2.2 PowerShellGet
Script 1.0.0.1 PowerShellGet
如何卸载旧版本?
Uninstall-Module
命令似乎正在2.2
目录中查找。这是为什么?>Uninstall-Module -Name 'PowerShellGet' -RequiredVersion '1.0.0.1'
PackageManagement\Uninstall-Package : No match was found for the specified search criteria and module names 'PowerShellGet'.
At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\2.2\PSModule.psm1:12655 char:21
+ ... $null = PackageManagement\Uninstall-Package @PSBoundParameters
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Microsoft.Power...ninstallPackage:UninstallPackage) [Uninstall-Package], Exception
+ FullyQualifiedErrorId : NoMatchFound,Microsoft.PowerShell.PackageManagement.Cmdlets.UninstallPackage
当我尝试指定旧版本时,它将报告新版本。
>Get-Module -FullyQualifiedName @{ModuleName="PowerShellGet";ModuleVersion="1.0.0.1"}
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Script 2.2 PowerShellGet {Find-Command, Find-DscResource, Find-Module, Find-RoleCapability...}
>($PSVersionTable.PSVersion).ToString()
5.1.14409.1018
>(Get-CimInstance -ClassName Win32_OperatingSystem).Caption
Microsoft Windows 7 Enterprise
最佳答案
简短答案:
如果未使用PowerShellGet
进行安装,则无法使用PowerShellGet
进行卸载。
长答案:PowerShellGet v1.0.0.1
是Windows的一部分,没有自然使用PowerShellGet
。因此,为什么不能使用PowerShellGet
对其进行Uninstall-Module
。
另一方面,PowerShellGet v2.2
与PowerShellGet
一起安装,因此您可以对其进行Uninstall-Module
。您还可以更新它,等等。
如果您确实要卸载v1.0.0.1版本,则必须遵循以下步骤
Steps: