Remove-Module
Modülleri geçerli oturumdan kaldırır.
Sözdizimi
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
Remove-Module
cmdlet'i, cmdlet'ler ve işlevler gibi bir modülün üyelerini geçerli oturumdan kaldırır.
Modül bir derleme (.dll
) içeriyorsa, derleme tarafından uygulanan tüm üyeler kaldırılır, ancak derleme kaldırılmaz.
Bu cmdlet modülü kaldırmaz veya bilgisayardan silmez. Yalnızca geçerli PowerShell oturumunu etkiler.
Örnekler
Örnek 1: Modülü kaldırma
Remove-Module -Name "BitsTransfer"
Bu komut, BitsTransfer modülünü geçerli oturumdan kaldırır.
Örnek 2: Tüm modülleri kaldırma
Get-Module | Remove-Module
Bu komut geçerli oturumdaki tüm modülleri kaldırır.
Örnek 3: İşlem hattını kullanarak modülleri kaldırma
"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')".
Bu komut, geçerli oturumdan BitsTransfer ve PSDiagnostics modüllerini kaldırır.
komutu, modül adlarını |
göndermek için bir işlem hattı işleci (Remove-Module
) kullanır. Kaldırılan üyeler hakkında ayrıntılı bilgi almak için Ayrıntılı ortak parametresini kullanır.
Ayrıntılı iletileri kaldırılan öğeleri gösterir. BitsTransfer modülü cmdlet'lerini uygulayan bir derleme ve kendi derlemesine sahip iç içe yerleştirilmiş bir modül içerdiğinden iletiler farklılık gösterir. PSDiagnostics modülü, işlevleri dışarı aktaran bir modül betik dosyası (.psm1
) içerir.
Örnek 4: ModuleInfo kullanarak modülü kaldırma
$a = Get-Module BitsTransfer
Remove-Module -ModuleInfo $a
Bu komut, BitsTransfer modülünü kaldırmak için ModuleInfo parametresini kullanır.
Örnek 5: OnRemove olayını kullanma
Modülü kaldırırken, modülün kaldırılmaya tepki vermesine ve kaynakları boşaltma gibi bazı temizleme görevlerini gerçekleştirmesine olanak tanıyan bir olay tetikleyicisi vardır.
$OnRemoveScript = {
# perform cleanup
$cachedSessions | Remove-PSSession
}
$ExecutionContext.SessionState.Module.OnRemove += $OnRemoveScript
$registerEngineEventSplat = @{
SourceIdentifier = ([System.Management.Automation.PSEngineEvent]::Exiting)
Action = $OnRemoveScript
}
Register-EngineEvent @registerEngineEventSplat
$OnRemoveScript
değişkeni, kaynakları temizleyen betik bloğunu içerir. Betik bloğunu $ExecutionContext.SessionState.Module.OnRemove
atayarak kaydedersiniz. PowerShell oturumu sona erdiğinde betik bloğunun yürütülmesi için Register-EngineEvent
de kullanabilirsiniz.
Betik tabanlı modüller için bu kodu .psm1
dosyasına ekleyebilir veya modül bildiriminin ScriptsToProcess özelliğinde listelenen bir başlangıç betiğine koyabilirsiniz.
Parametreler
-Confirm
Cmdlet'i çalıştırmadan önce sizden onay ister.
Tür: | SwitchParameter |
Diğer adlar: | cf |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Force
Bu cmdlet'in salt okunur modülleri kaldırdığını gösterir. varsayılan olarak, Remove-Module
yalnızca okuma-yazma modüllerini kaldırır.
ReadOnly ve ReadWrite değerleri bir modülün AccessMode özelliğinde depolanır.
Tür: | SwitchParameter |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-FullyQualifiedName
Değer bir modül adı, tam modül belirtimi veya modül dosyasının yolu olabilir.
Değer bir yol olduğunda, yol tam veya göreli olabilir. Göreli yol, using deyimini içeren betike göre çözümlenir.
Değer bir ad veya modül belirtimi olduğunda PowerShell, belirtilen modülü psmodulepath arar.
Modül belirtimi, aşağıdaki anahtarlara sahip bir karma tablodur.
-
ModuleName
- Gerekli Modül adını belirtir. -
GUID
- İsteğe bağlı Modülün GUID değerini belirtir. - Ayrıca aşağıdaki üç anahtardan en az birini belirtmek için Gerekli .
-
ModuleVersion
- Modülün kabul edilebilir en düşük sürümünü belirtir. -
MaximumVersion
- Modülün kabul edilebilir en yüksek sürümünü belirtir. -
RequiredVersion
- Modülün tam ve gerekli bir sürümünü belirtir. Bu, diğer Sürüm anahtarlarıyla kullanılamaz.
-
Tür: | ModuleSpecification[] |
Position: | 0 |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-ModuleInfo
Kaldırılacak modül nesnelerini belirtir.
PSModuleInfo nesnesi veya Get-Module
komutu gibi bir modül nesnesi alan bir komut içeren bir değişken girin. Modül nesnelerini Remove-Module
de aktarabilirsiniz.
Tür: | PSModuleInfo[] |
Position: | 0 |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-Name
Kaldırılacak modüllerin adlarını belirtir. Joker karakterlere izin verilir. Ayrıca, ad dizelerini Remove-Module
' e de yöneltebilirsiniz.
Tür: | String[] |
Position: | 0 |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | True |
-WhatIf
Cmdlet çalıştırılırsa ne olacağını gösterir. Cmdlet çalıştırılmıyor.
Tür: | SwitchParameter |
Diğer adlar: | wi |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
Girişler
Modül adını bu cmdlet'e aktarabilirsiniz.
Bir modül nesnesini bu cmdlet'e aktarabilirsiniz.
Çıkışlar
None
Bu cmdlet çıkış döndürmez.
Notlar
PowerShell, Remove-Module
için aşağıdaki diğer adları içerir:
- Tüm platformlar:
rmo
Bir modülü kaldırdığınızda, bazı temizleme kodlarını çalıştırmak için kullanılabilecek bir olay tetikleniyor. Diğer ayrıntılar için bkz. Örnek 5.