系统似乎安装了两 (2) 个版本的 PowerShellGet 模块。
Script 2.2 PowerShellGet
Script 1.0.0.1 PowerShellGet
Run Code Online (Sandbox Code Playgroud)
如何卸载旧版本?该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
Run Code Online (Sandbox Code Playgroud)
当我尝试指定旧版本时,它会报告新版本。
>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
Run Code Online (Sandbox Code Playgroud)
简短的回答:
您不能卸载用的东西PowerShellGet,如果它没有安装PowerShellGet。
长答案:
PowerShellGet v1.0.0.1作为 Windows 的一部分安装,并且不使用PowerShellGet(自然)。因此,你为什么不能使用PowerShellGet到Uninstall-Module它。
PowerShellGet v2.2在另一方面,被安装了PowerShellGet,所以你可以 Uninstall-Module吧。您也可以更新它等。
如果你真的要卸载 v1.0.0.1 版本,你必须按照以下 步骤操作:
- 浏览到
C:\Program Files\WindowsPowerShell\Modules\- 进入
C:\Program Files\WindowsPowerShell\Modules\PowershellGet文件夹,删除子文件夹1.0.0.1- 然后同样操作
C:\Program Files\WindowsPowerShell\Modules\PackageManagement,删除子文件夹1.0.0.1
| 归档时间: |
|
| 查看次数: |
4688 次 |
| 最近记录: |