Remove-PSSnapin

Removes Windows PowerShell snap-ins from the current session.
Remove-PSSnapin [-Name*] <String[]> [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]

The Remove-PSSnapin cmdlet removes a Windows PowerShell snap-in from the current session. You can use it to remove snap-ins that you have added to Windows PowerShell You cannot use this cmdlet to remove the snap-ins that are installed with Windows PowerShell.

After you remove a snap-in from the current session, the snap-in is still loaded, but the cmdlets and providers in the snap-in are no longer available in the session.

Parameters
-Name <String[]>

  • This value is required
  • Default value is None
  • Accepts pipeline input ByPropertyName

Specifies the names of Windows PowerShell snap-ins to remove from the current session. Wildcard characters (*) are permitted.

-PassThru [<SwitchParameter>]

Returns an object that represents the snap-in. By default, this cmdlet does not generate any output.

-Confirm [<SwitchParameter>]

  • Default value is false

Prompts you for confirmation before running the cmdlet.Prompts you for confirmation before running the cmdlet.

-WhatIf [<SwitchParameter>]

  • Default value is false

Shows what would happen if the cmdlet runs. The cmdlet is not run.Shows what would happen if the cmdlet runs. The cmdlet is not run.

<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,ErrorAction, ErrorVariable, WarningAction, WarningVariable,OutBuffer, PipelineVariable, and OutVariable.

Inputs

System.Management.Automation.PSSnapInInfo

You can pipe a snap-in object to this cmdlet.

Outputs

None, System.Management.Automation.PSSnapInInfo

This cmdlet generates a System.Management.Automation.PSSnapInInfo object that represents the snap-in, if you specify the PassThru parameter. By default, Remove-PSSnapin does not generate any output.

Examples
  1. Remove a snap-in:
    PS C:> remove-pssnapin -Name Microsoft.Exchange
    

    This command removes the Microsoft.Exchange snap-in from the current session. When the command is complete, the cmdlets and providers that the snap-in supported are not available in the session.

  2. Remove snap-ins by using names with the pipeline:
    PS C:> Get-PSSnapIn smp* | Remove-PSSnapIn
    

    This command removes the Windows PowerShell snap-ins that have names that start with smp from the current session.

    The command uses the Get-PSSnapin cmdlet to get objects that represent the snap-ins. The pipeline operator (|) sends the results to the Remove-PSSnapin cmdlet, which removes them from the session. The providers and cmdlets that this snap-in supports are no longer available in the session.

    When you pipe objects to Remove-PSSnapin, the names of the objects are associated with the Name parameter, which accepts objects from the pipeline that have a Name property.

  3. Remove snap-ins by using names:
    PS C:> Remove-PSSnapin -Name *event*
    

    This command removes all Windows PowerShell snap-ins that have names that include event.

Additional Notes
 Remove-PSSnapin does not check the version of Windows PowerShell before removing a snap-in from the session. 
 If a snap-in cannot be removed, a warning appears and the command fails.
 Remove-PSSnapin affects only the current session. If you have added an Add-PSSnapin command to your Windows 
 PowerShell profile, you should delete the command to remove the snap-in from future sessions. For 
 instructions, type Get-Help about_Profiles.
Related Links

Add-PSSnapin
Get-PSSnapin