Remove-Module
Hiermee verwijdert u modules uit de huidige sessie.
Syntax
Remove-Module
[-Name] <String[]>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-Module
[-FullyQualifiedName] <ModuleSpecification[]>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-Module
[-ModuleInfo] <PSModuleInfo[]>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
De Remove-Module
cmdlet verwijdert de leden van een module, zoals cmdlets en functies, uit de huidige sessie.
Als de module een assembly (.dll
) bevat, worden alle leden verwijderd die door de assembly zijn geïmplementeerd, maar wordt de assembly niet gelost.
Met deze cmdlet wordt de module niet verwijderd of van de computer verwijderd. Dit is alleen van invloed op de huidige PowerShell-sessie.
Voorbeelden
Voorbeeld 1: Een module verwijderen
Remove-Module -Name "BitsTransfer"
Met deze opdracht verwijdert u de BitsTransfer-module uit de huidige sessie.
Voorbeeld 2: Alle modules verwijderen
Get-Module | Remove-Module
Met deze opdracht verwijdert u alle modules uit de huidige sessie.
Voorbeeld 3: Modules verwijderen met behulp van de pijplijn
"FileTransfer", "PSDiagnostics" | Remove-Module -Verbose
VERBOSE: Performing operation "Remove-Module" on Target "filetransfer (Path: 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\filetransfer\filetransfer.psd1')".
VERBOSE: Performing operation "Remove-Module" on Target "Microsoft.BackgroundIntelligentTransfer.Management (Path: 'C:\Windows\assembly\GAC_MSIL\Microsoft.BackgroundIntelligentTransfer.Management\1.0.0.0__31bf3856ad364e35\Microsoft.BackgroundIntelligentTransfe
r.Management.dll')".
VERBOSE: Performing operation "Remove-Module" on Target "psdiagnostics (Path: 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\psdiagnostics\psdiagnostics.psd1')".
VERBOSE: Removing imported function 'Start-Trace'.
VERBOSE: Removing imported function 'Stop-Trace'.
VERBOSE: Removing imported function 'Enable-WSManTrace'.
VERBOSE: Removing imported function 'Disable-WSManTrace'.
VERBOSE: Removing imported function 'Enable-PSWSManCombinedTrace'.
VERBOSE: Removing imported function 'Disable-PSWSManCombinedTrace'.
VERBOSE: Removing imported function 'Set-LogProperties'.
VERBOSE: Removing imported function 'Get-LogProperties'.
VERBOSE: Removing imported function 'Enable-PSTrace'.
VERBOSE: Removing imported function 'Disable-PSTrace'.
VERBOSE: Performing operation "Remove-Module" on Target "PSDiagnostics (Path: 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\psdiagnostics\PSDiagnostics.psm1')".
Met deze opdracht verwijdert u de modules BitsTransfer en PSDiagnostics uit de huidige sessie.
De opdracht maakt gebruik van een pijplijnoperator (|
) om de modulenamen te verzenden naar Remove-Module
. De algemene parameter Uitgebreid wordt gebruikt om gedetailleerde informatie op te halen over de leden die worden verwijderd.
In de uitgebreide berichten worden de items weergegeven die zijn verwijderd. De berichten verschillen omdat de BitsTransfer-module een assembly bevat die de cmdlets implementeert en een geneste module met een eigen assembly. De PSDiagnostics-module bevat een modulescriptbestand (.psm1
) waarmee functies worden geëxporteerd.
Voorbeeld 4: Een module verwijderen met behulp van ModuleInfo
$a = Get-Module BitsTransfer
Remove-Module -ModuleInfo $a
Met deze opdracht wordt de parameter ModuleInfo gebruikt om de bitstransfermodule te verwijderen.
Parameters
-Confirm
Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Geeft aan dat deze cmdlet alleen-lezen modules verwijdert. Standaard verwijdert Remove-Module
u alleen lees-schrijfmodules.
De waarden ReadOnly en ReadWrite worden opgeslagen in de eigenschap AccessMode van een module.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FullyQualifiedName
Hiermee geeft u de volledig gekwalificeerde namen van modules te verwijderen.
Type: | ModuleSpecification[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ModuleInfo
Hiermee geeft u de moduleobjecten te verwijderen. Voer een variabele in die een moduleobject (PSModuleInfo) of een opdracht bevat waarmee een moduleobject wordt opgehaald, zoals een Get-Module
opdracht. U kunt ook moduleobjecten doorsnijden naar Remove-Module
.
Type: | PSModuleInfo[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Hiermee geeft u de namen van modules te verwijderen. Jokertekens zijn toegestaan. U kunt ook naamtekenreeksen doorsluizen naar Remove-Module
.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-WhatIf
Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Invoerwaarden
System.String, System.Management.Automation.PSModuleInfo
U kunt modulenamen en moduleobjecten doorspezen naar Remove-Module
.
Uitvoerwaarden
None
Deze cmdlet genereert geen uitvoer.
Notities
Wanneer u een module verwijdert, is er een gebeurtenis in de module die wordt uitgevoerd. Met deze gebeurtenis kan een module reageren op verwijdering en enige opschoning uitvoeren, zoals het vrijmaken van resources. Voorbeeld:
$OnRemoveScript = {
# opschonen uitvoeren
$cachedSessions | Remove-PSSession
}
$ExecutionContext.SessionState.Module.OnRemove += $OnRemoveScript
Voor volledige consistentie kan het ook handig zijn om te reageren op het afsluiten van het PowerShell-proces:
Register-EngineEvent -SourceIdentifier ([System.Management.Automation.psEngineEvent]::Afsluiten) -Action $OnRemoveScript