Uninstall-Package
Syntax
Uninstall-Package
[-InputObject] <SoftwareIdentity[]>
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Uninstall-Package
[-Name] <String[]>
[-RequiredVersion <String>]
[-MinimumVersion <String>]
[-MaximumVersion <String>]
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-ProviderName <String[]>]
[<CommonParameters>]
Uninstall-Package
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-Destination <String>]
[-ExcludeVersion]
[-Scope <String>]
[-SkipDependencies]
[<CommonParameters>]
Uninstall-Package
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-Destination <String>]
[-ExcludeVersion]
[-Scope <String>]
[-SkipDependencies]
[<CommonParameters>]
Uninstall-Package
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-Scope <String>]
[-PackageManagementProvider <String>]
[-Type <String>]
[-AllowClobber]
[-SkipPublisherCheck]
[-InstallUpdate]
[-NoPathUpdate]
[-AllowPrereleaseVersions]
[<CommonParameters>]
Uninstall-Package
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-Scope <String>]
[-PackageManagementProvider <String>]
[-Type <String>]
[-AllowClobber]
[-SkipPublisherCheck]
[-InstallUpdate]
[-NoPathUpdate]
[-AllowPrereleaseVersions]
[<CommonParameters>]
Description
The Uninstall-Package
cmdlet uninstalls one or more software packages from the local computer. To
find installed packages, use the Get-Package
cmdlet.
Examples
Example 1: Uninstall a package
The Uninstall-Package
cmdlet uninstalls packages. The Name parameter specifies the package to
uninstall. If multiple versions of a package are installed, the newest version is uninstalled.
PS> Uninstall-Package -Name NuGet.Core
Example 2: Use the pipeline to uninstall a package
Get-Package
locates a specific package and sends the SoftwareIdentity object down the pipeline
to the Uninsall-Package
cmdlet.
PS> Get-Package -Name NuGet.Core -RequiredVersion 2.14.0 | Uninstall-Package
The Get-Package
cmdlet uses the Name and RequiredVersion parameters to specify a package.
A SoftwareIdentity object is sent down the pipeline. The Uninstall-Package
cmdlet receives the
object as an InputObject and removes the package.
As an alternative, the Uninstall-Package
cmdlet can specify a value for the InputObject
parameter:
Uninstall-Package -InputObject ( Get-Package -Name NuGet.Core -RequiredVersion 2.14.0 )
Parameters
Indicates that this cmdlet uninstalls all versions of the package.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Overrides warning messages about conflicts with existing commands. Overwrites existing commands that have the same name as commands being installed.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Allows packages marked as prerelease to be uninstalled.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies a string of the path to the input object.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Switch to exclude the version number in the folder path.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Forces the command to run without asking for user confirmation.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Forces PackageManagement to automatically install the package provider for the specified package.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Accepts pipeline input that specifies the package's SoftwareIdentity object from the
Get-Package
cmdlet. InputObject accepts the SoftwareIdentity object as a Get-Package
value or a variable that contains the object.
Type: | SoftwareIdentity[] |
Position: | 0 |
Default value: | None |
Accept pipeline input: | True (ByValue) |
Accept wildcard characters: | False |
Indicates that Uninstall-Package
uninstalls updates.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the maximum allowed package version that you want to uninstall. If you don't specify this
parameter, Uninstall-Package
uninstalls the package's newest version.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the minimum allowed package version that you want to uninstall. If you don't add this
parameter, Uninstall-Package
uninstalls the package's newest version that satisfies any version
specified by the MaximumVersion parameter.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies one or more package names. Multiple package names must be separated by commas.
Type: | String[] |
Position: | 0 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
NoPathUpdate only applies to the Install-Script
cmdlet. NoPathUpdate is a dynamic
parameter added by the provider and isn't supported by Uninstall-Package
.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the PackageManagement provider.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies one or more package provider names to search for packages. You can get package provider
names by running the Get-PackageProvider
cmdlet.
Type: | String[] |
Aliases: | Provider |
Accepted values: | Bootstrap, NuGet, PowerShellGet |
Position: | Named |
Default value: | None |
Accept pipeline input: | True (ByPropertyName) |
Accept wildcard characters: | False |
Specifies the exact allowed version of the package that you want to uninstall. If you don't add this
parameter, Uninstall-Package
uninstalls the package's newest version that satisfies any version
specified by the MaximumVersion parameter.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the scope for which to uninstall the package. The acceptable values for this parameter are as follows:
- CurrentUser
- AllUsers
Type: | String |
Accepted values: | CurrentUser, AllUsers |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Skips the uninstallation of software dependencies.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Allows you to get a package version that is newer than your installed version. For example, an installed package that is digitally signed by a trusted publisher but a new version isn't digitally signed.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies whether to search for packages with a module, a script, or both. The acceptable values for this parameter are as follows:
- Module
- Script
- All
Type: | String |
Accepted values: | Module, Script, All |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Shows what would happen if Uninstall-Package
cmdlet is run. The cmdlet isn't run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
`Uninstall-Package` accepts **SoftwareIdentity** objects from the pipeline as input.
Outputs
`Uninstall-Package` doesn't generate any output.
Notes
Including a package provider in a command can make dynamic parameters available to a cmdlet. Dynamic
parameters are specific to a package provider. The Get-Help
cmdlet lists a cmdlet's parameter sets
and includes the provider's parameter set. For example, Uninstall-Package
has the
PowerShellGet parameter set that includes -NoPathUpdate
, AllowClobber
, and
SkipPublisherCheck
.
Related Links
Feedback
Loading feedback...