Azure Powershell Az 模块附带了各种模块,例如 Az.Accounts、Az.Aks 等。是否可以一次更新所有这些 Az.* 模块?
试试这个
Get-InstalledModule -Name Az* | Update-Module
您可以在
-Force
之后添加 Update-Module
,这样您就不会在每个模块中收到诸如不受信任的存储库之类的提示。
Update-Module Az -Force
所有单独的模块都是 Az 模块的依赖项。所以这应该可以解决问题。
如果您想跟踪进度,请添加 -Verbose。
你可以尝试一下我不久前写的这个脚本。它会遍历每个
Az.*
模块并更新到最新版本,包括删除仍然安装的以前版本。
# Go through all Az.* versions
# Use -ListAvailable to show all versions
Get-Module -Name Az.* -ListAvailable | ForEach-Object {
$moduleName = $_.Name
$currentVersion = [Version]$_.Version
Write-Host "Current version $moduleName [$currentVersion]"
# Get latest version from gallery
$latestVersion = [Version](Find-Module -Name $moduleName).Version
# Only proceed if latest version in gallery is greater than your current version
if ($latestVersion -gt $currentVersion) {
Write-Host "Found latest version $modulename [$latestVersion] from $($latestVersionModule.Repository)"
# Check if latest version is already installed before updating
$latestVersionModule = Get-InstalledModule -Name $moduleName -RequiredVersion $latestVersion -ErrorAction SilentlyContinue
if ($null -eq $latestVersionModule) {
Write-Host "Updating $moduleName Module from [$currentVersion] to [$latestVersion]"
Update-Module -Name $moduleName -RequiredVersion $latestVersion -Force
}
else {
Write-Host "No update needed, $modulename [$latestVersion] already exists"
}
# Uninstall outdated version
Write-Host "Uninstalling $moduleName [$currentVersion]"
Uninstall-Module -Name $moduleName -RequiredVersion $currentVersion -Force
}
# Otherwise we already have most up to date version
else {
Write-Host "$moduleName already up to date"
}
}
本文提供有关 Azure Az PowerShell 模块的完整详细信息和步骤:https://learn.microsoft.com/en-us/powershell/azure/new-azureps-module-az?view=azps-5.7.0 如果您正在寻找特定的服务模块,请查看参考部分
更新 Az PowerShell 模块已正式记录,请参阅此处。虽然现有答案准确且有帮助,但注意一些细微差别可能会有所帮助。
要更新任何 PowerShell 模块,您应该使用相同的方法 安装模块。例如,如果您最初使用 Install-Module,那么你应该使用Update-Module来获取最新的 版本。如果您最初使用 MSI 包,那么您应该 下载并安装新的 MSI 包。
PowerShellGet cmdlet 无法更新已安装的模块 来自 MSI 包。 MSI 软件包不会更新以前的模块 使用 PowerShellGet 安装。如果您在使用更新时遇到任何问题 PowerShellGet,那么你应该重新安装,而不是更新。 重新安装的方法与安装相同。确保您使用 重新安装时使用 Install-Module 强制参数。