Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel erfahren Sie, wie Sie eine ältere Version von Azure PowerShell deinstallieren oder vollständig aus Ihrem System entfernen. Wenn Sie sich entschieden haben, Azure PowerShell vollständig zu deinstallieren, geben Sie uns feedback über das Send-Feedback-Cmdlet . Wenn ein Fehler aufgetreten ist, würden wir es schätzen, wenn Sie ein GitHub-Problem ablegen , damit es behoben werden kann.
Deinstallieren des Az PowerShell-Moduls über MSI
Wenn Sie das Az PowerShell-Modul mit dem MSI-Paket installiert haben, müssen Sie es über das Windows-System statt über PowerShell deinstallieren.
Plattform | Anweisungen |
---|---|
Windows 10 | Starten Sie > Einstellungen > Apps |
Windows 7 Windows 8 |
Start > Systemsteuerung > Programme > Programm deinstallieren |
Sobald Sie sich auf diesem Bildschirm befinden, sollte Azure PowerShell im Programmeintrag angezeigt werden. Dies ist die zu deinstallierende App. Wenn dieses Programm nicht aufgeführt ist, installieren Sie es über PowerShellGet und sollten den nächsten Anweisungen folgen.
Deinstallieren des Az PowerShell-Moduls von PowerShellGet
Um die Az-Module zu deinstallieren, können Sie das Cmdlet Uninstall-Module verwenden. Uninstall-Module
Es wird jedoch nur ein Modul deinstalliert. Um das Az PowerShell-Modul vollständig zu entfernen, müssen Sie jedes Modul einzeln deinstallieren. Die Deinstallation kann kompliziert sein, wenn Sie mehr als eine Version von Azure PowerShell installiert haben.
Führen Sie den folgenden Befehl aus, um zu überprüfen, welche Versionen des Az PowerShell-Moduls Sie installiert haben:
Get-InstalledModule -Name Az -AllVersions
Version Name Repository Description
------- ---- ---------- -----------
3.8.0 Az PSGallery Microsoft Azure PowerShell
4.1.0 Az PSGallery Microsoft Azure PowerShell
Das folgende Skript fragt den PowerShell-Katalog ab, um eine Liste der abhängigen Untermodule abzurufen. Anschließend deinstalliert das Skript die richtige Version der einzelnen Untermodule. Sie benötigen Administratorzugriff, um dieses Skript in einem anderen Bereich als "Prozess " oder " Aktueller Benutzer" auszuführen.
function Uninstall-AzModule {
[CmdletBinding(SupportsShouldProcess)]
param(
[ValidateNotNullOrEmpty()]
[ValidateSet('Az','AzureRM','Azure')]
[string]$Name = 'Az',
[Parameter(Mandatory)]
[string]$Version,
[switch]$AllowPrerelease
)
$Params = @{}
if ($PSBoundParameters.AllowPrerelease) {
$Params.AllowPrerelease = $true
}
$IsAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] 'Administrator')
if (-not(Get-InstalledModule -Name $Name -RequiredVersion $Version -ErrorAction SilentlyContinue -OutVariable RootModule @Params)) {
Write-Warning -Message "Uninstall aborted. $Name version $Version not found."
} elseif (($RootModule.InstalledLocation -notlike "*$env:USERPROFILE*") -and ($IsAdmin -eq $false)) {
Write-Warning -Message "Uninstall aborted. $Name version $Version exists in a system path. PowerShell must be run elevated as an admin to remove it."
} elseif ((Get-Process -Name powershell, pwsh -OutVariable Sessions -ErrorAction SilentlyContinue).Count -gt 1) {
Write-Warning -Message "Uninstall aborted. Please close all other PowerShell sessions before continuing. There are currently $($Sessions.Count) PowerShell sessions running."
} else {
Write-Verbose -Message 'Creating list of dependencies...'
$target = Find-Module -Name $Name -RequiredVersion $Version @Params
$AllModules = @([pscustomobject]@{
Name = $Name
Version = $Version
})
$AllModules += foreach ($dependency in $target.Dependencies) {
switch ($dependency.keys) {
{$_ -contains 'RequiredVersion'} {$UninstallVersion = $dependency.RequiredVersion; break}
{$_ -contains 'MinimumVersion'} {$UninstallVersion = $dependency.MinimumVersion; break}
}
[pscustomobject]@{
Name = $dependency.Name
Version = $UninstallVersion
}
}
[int]$i = 100 / $AllModules.Count
foreach ($module in $AllModules) {
Write-Progress -Activity 'Uninstallation in Progress' -Status "$i% Complete:" -PercentComplete $i
$i++
if (Get-InstalledModule -Name $module.Name -RequiredVersion $module.Version -ErrorAction SilentlyContinue @Params) {
Write-Verbose -Message "Uninstalling $($module.Name) version $($module.Version)"
Remove-Module -FullyQualifiedName @{ModuleName=$module.Name;ModuleVersion=$module.Version} -ErrorAction SilentlyContinue
try {
if ($PSCmdlet.ShouldProcess("$($module.Name) version $($module.Version)")) {
Uninstall-Module -Name $module.Name -RequiredVersion $module.Version -Force -ErrorAction Stop @Params
}
$State = 'Uninstalled'
} Catch {
$State = 'Manual uninstall required'
Write-Verbose -Message "$($module.Name) version: $($module.Version) may require manual uninstallation."
}
} else {
$State = 'Not found'
Write-Verbose -Message "$($module.Name) version: $($module.Version) not found."
}
if (-not $PSBoundParameters.WhatIf) {
[pscustomobject]@{
ModuleName = $module.Name
Version = $module.Version
State = $State
}
}
}
}
}
Um diese Funktion zu verwenden, kopieren Sie den Code, und fügen Sie ihn in Ihre PowerShell-Sitzung ein. Das folgende Beispiel zeigt, wie Sie die Funktion ausführen, um eine ältere Version des Az PowerShell-Moduls und deren Untermodule zu entfernen.
Uninstall-AzModule -Name Az -Version 1.8.0
Wenn das Skript ausgeführt wird, wird der Name, die Version und der Status der einzelnen Untermodule angezeigt, die deinstalliert werden. Wenn Sie das Skript ausführen möchten, um nur zu sehen, was gelöscht würde, ohne es zu entfernen, geben Sie den -WhatIf
Parameter an.
ModuleName Version State
---------- ------- -----
Az.Accounts 1.5.1 Not found
Az.Aks 1.0.1 Uninstalled
Az.AnalysisServices 1.1.0 Uninstalled
Az.ApiManagement 1.0.0 Uninstalled
Az.ApplicationInsights 1.0.0 Uninstalled
...
Von Bedeutung
Wenn dieses Skript nicht mit einer genauen Abhängigkeit mit derselben zu deinstallierenden Version übereinstimmen kann, wird keine Version dieser Abhängigkeit deinstalliert. Dies liegt daran, dass es möglicherweise andere Versionen des Zielmoduls auf Ihrem System gibt, die auf diesen Abhängigkeiten basieren.
Führen Sie das folgende Beispiel für jede Version des Az PowerShell-Moduls aus, das Sie deinstallieren möchten. Aus Gründen der Einfachheit deinstalliert das folgende Skript alle Versionen von Az mit Ausnahme der neuesten.
$Modules = Get-InstalledModule -Name Az -AllVersions |
Sort-Object -Property Version -Descending |
Select-Object -Skip 1
$Modules | ForEach-Object {Uninstall-AzModule -Name $_.Name -Version $_.Version}
Deinstallieren des AzureRM-Moduls
Wenn Sie das Az-Modul auf Ihrem System installiert haben und AzureRM deinstallieren möchten, gibt es zwei Optionen. Welche Methode Sie befolgen, hängt davon ab, wie Sie das AzureRM-Modul installiert haben. Wenn Sie nicht sicher sind, ob Sie die ursprüngliche Installationsmethode verwenden, führen Sie die Schritte zum deinstallieren eines MSI zuerst aus.
Deinstallieren des AzureRM PowerShell-Moduls über MSI
Wenn Sie das AzureRM PowerShell-Modul mithilfe des MSI-Pakets installiert haben, müssen Sie es über das Windows-System und nicht über PowerShell deinstallieren.
Plattform | Anweisungen |
---|---|
Windows 10 | Starten Sie > Einstellungen > Apps |
Windows 7 Windows 8 |
Start > Systemsteuerung > Programme > Programm deinstallieren |
Sobald Sie sich auf diesem Bildschirm befinden, sollte Azure PowerShell oder Microsoft Azure PowerShell – Monat Jahr in der Programmauflistung angezeigt werden. Dies ist die zu deinstallierende App. Wenn dieses Programm nicht aufgeführt ist, installieren Sie es über PowerShellGet und sollten den nächsten Anweisungen folgen.
Deinstallieren des AzureRM PowerShell-Moduls von PowerShellGet
Wenn Sie AzureRM mit PowerShellGet installiert haben, können Sie die Module mit dem Cmdlet Uninstall-AzureRM entfernen, das als Teil des Az.Accounts
Moduls verfügbar ist. Im folgenden Beispiel werden alle AzureRM-Module von Ihrem Computer entfernt. Sie erfordert Administratorrechte.
Uninstall-AzureRm