Uninstall-PSResource
Uninstalls a resource that was installed using PowerShellGet.
Syntax
Uninstall-PSResource
[-Name] <String[]>
[-Version <String>]
[-Prerelease]
[-SkipDependencyCheck]
[-Scope <ScopeType>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Uninstall-PSResource
[-Prerelease]
[-InputObject] <PSResourceInfo[]>
[-SkipDependencyCheck]
[-Scope <ScopeType>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
This cmdlet combines the functionality of the Uninstall-Module
and Uninstall-Script
cmdlets from
PowerShellGet v2. The cmdlet searches the package installation paths for resources that have the
PowerShellGet XML metadata file. Matching resources are uninstalled from the system.
By default, the cmdlet checks to see whether the resource being removed is a dependency for another resource.
Examples
Example 1
Uninstall the latest version of the Az module.
Uninstall-PSResource Az
Example 2
Uninstall a specific version of the Az module.
Uninstall-PSResource -name Az -version "5.0.0"
Example 3
Uninstalls all versions of the Az module within the specified version range.
Uninstall-PSResource -name Az -version "(5.0.0, 7.5.0)"
Example 4
This example assumes that the following versions of Az module are already installed:
- 4.0.1-preview
- 4.1.0
- 4.0.2-preview
The Uninstall-PSResource
cmdlet removes stable and prerelease version that fall within the version
range specified. Per NuGetVersion rules, a prerelease version is less than a stable version, so
4.0.1-preview is actually less than the 4.0.1 version in the specified range. Therefore,
4.0.1-preview isn't removed. Versions 4.1.0 and 4.0.2-preview are removed because they fall within
the range.
Uninstall-PSResource -name Az -version "[4.0.1, 4.1.0]"
Example 5
This example assumes that the following versions of Az module are already installed:
- 4.0.1-preview
- 4.1.0
- 4.0.2-preview
This is the same as the previous example except the Prerelease parameter means that only prerelease versions are removed. Only version 4.0.2-preview is removed because version 4.0.1-preview is outside the range and version 4.1.0 isn't a prerelease version.
Uninstall-PSResource -name Az -version "[4.0.1, 4.1.0]" -Prerelease
Parameters
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Used for pipeline input.
Type: | Microsoft.PowerShell.PSResourceGet.UtilClasses.PSResourceInfo[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Name of a resource or resources to remove. Wildcards are supported but NuGet only accepts the *
character.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Prerelease
Indicates that only prerelease version resources should be removed.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Scope
Specifies the scope of the resource to uninstall.
Type: | Microsoft.PowerShell.PSResourceGet.UtilClasses.ScopeType |
Accepted values: | CurrentUser, AllUsers |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipDependencyCheck
By default, the cmdlet checks to see whether the resource being removed is a dependency for another resource. Using this parameter skips the dependency test.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Version
Specifies the version of the resource to be removed. The value can be an exact version or a version range using the NuGet versioning syntax.
For more information about NuGet version ranges, see Package versioning.
PowerShellGet supports all but the minimum inclusive version listed in the NuGet version range
documentation. Using 1.0.0.0
as the version doesn't yield versions 1.0.0.0 and higher (minimum
inclusive range). Instead, the value is considered to be the required version. To search for a
minimum inclusive range, use [1.0.0.0, ]
as the version range.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet isn't run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
String[]
Microsoft.PowerShell.PSResourceGet.UtilClasses.PSResourceInfo[]