Remove-Module

Modülleri geçerli oturumdan kaldırır.

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

cmdlet'i Remove-Module , 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, BitsTransfer ve PSDiagnostics modüllerini geçerli oturumdan kaldırır.

komutu, modül adlarını Remove-Moduleadresine göndermek için bir işlem hattı işleci (|) 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ı iletiler 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 öğesine $ExecutionContext.SessionState.Module.OnRemoveatayarak kaydedersiniz. PowerShell oturumu sona erdiğinde betik bloğunun yürütülmesini sağlamak için de kullanabilirsiniz Register-EngineEvent .

Betik tabanlı modüller için bu kodu dosyaya .PSM1 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.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 , PSModulePath'de belirtilen modülü 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 gerekir .
    • 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, gerekli bir sürümünü belirtir. Bu, diğer Sürüm anahtarlarıyla kullanılamaz.
Type:ModuleSpecification[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ModuleInfo

Kaldırılacak modül nesnelerini belirtir. PSModuleInfo nesnesi içeren bir değişken veya komut gibi bir modül nesnesi alan bir Get-Module komut girin. Modül nesnelerini öğesine Remove-Modulede aktarabilirsiniz.

Type:PSModuleInfo[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Kaldırılacak modüllerin adlarını belirtir. Joker karakterlere izin verilir. Ayrıca, ad dizelerini adresine Remove-Modulede yöneltebilirsiniz.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-WhatIf

Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmıyor.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Girişler

String

Modül adını bu cmdlet'e aktarabilirsiniz.

PSModuleInfo

Bir modül nesnesini bu cmdlet'e aktarabilirsiniz.

Çıkışlar

None

Bu cmdlet çıkış döndürmez.

Notlar

PowerShell için aşağıdaki diğer adları Remove-Moduleiç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.