如何查找Azure PowerShell版本?

31

我需要通过Cmdlets代码找到已安装的Azure PowerShell版本。如何查找Azure PowerShell版本?

注意:除Cmdlets代码外,其他方式也可以。


我的回答解决了你的问题吗? - juvchan
以下是最新的代码:Get-Module AzureRM -ListAvailable | Select-Object -Property Name,Version,Path - Tim.Tang
我尝试了这篇帖子中列出的其他所有命令,但都没有起作用,所以我按照建议在此处使用MSI下载并安装了最新版本。 :( - Rajesh Swarnkar
希望有一个 Get-AzPwshVersion 命令! - Rajesh Swarnkar
8个回答

51

此 PowerShell 命令将获取 Azure PowerShell 版本。

Get-Module -ListAvailable -Name Azure -Refresh

即使Azure模块没有加载到当前的PowerShell会话中,它也能返回预期的结果,这是它的主要优点。

相反,(Get-Module Azure).Version 只有在Azure模块在当前的PowerShell会话中被加载之后才能正常工作,例如在当前的PowerShell会话中调用Azure模块的任何cmdlet (例如Get-AzureStorageAccount)。

enter image description here


5
Get-Module -ListAvailable -Name Azure -Refresh 命令未列出版本和名称列。我是否还遗漏了其他内容? - ManirajSS
嗨@ManirajSS,我重试了完全相同的命令,并且能够得到与我的答案中显示的预期结果。请问您正在运行哪个PowerShell版本和平台?我的当前Azure PowerShell版本是1.0.4。 - juvchan
2
@juvchan 当我在Windows Powershell中运行您的cmdlet时,它会返回您的输出,但是当我在Microsoft Azure Powershell中运行它时,它会返回 `ModuleType Name ExportedCommands
Manifest Azure {New-AzureServiceRemoteDesktopExtensionConfig, New-AzureStorageContext, ... `,没有版本信息 /cc @ManirajSS
- Frank van Eykelen
1
此命令的输出取决于您使用的PowerShell版本。答案中的输出来自PowerShell 5.0,而@FrankvanEykelen评论中的输出来自PowerShell 3.0。使用$PSVersionTable.PSVersion检查您的PowerShell版本。 - Mick

15

13

使用:

(Get-Module azure).Version

这将返回已安装的Azure PowerShell版本。

Azure PowerShell版本


10
如果当前的PowerShell会话中未加载Azure模块,此解决方案将无效,它将返回空值。我在我的环境中进行了测试。只有在当前的PowerShell会话中调用Azure模块中的任何cmdlet时,此解决方案才有效。 - juvchan
4
对我来说,这是有效的方法:(Get-Module -ListAvailable -Name Azure -Refresh).Version - Leonel
请参考Jonathan-Gao的答案,该答案使用了Get-InstalledModule命令。 - TxRegex

6

您可以使用以下命令获取Azure PowerShell版本!

复制并粘贴以下内容,然后运行它!

(Get-Module -ListAvailable | Where-Object{ $_.Name -eq 'Azure' }) ` | Select Version, Name, Author, PowerShellVersion  | Format-List;

3
Get-Module AzureRM -List | Select-Object Name, Version, Path

如果您运行多个版本,这是非常好的。


3

这应该是答案。 - John Stud
2
对我来说,这个命令只会给我 Powershell 的版本,没有任何关于 AzureAd 的参考。对我来说,我正在使用 Azure 在线,所以我可以用这个命令获取信息:Get-Module Azuread -ListAvailable | Select-Object -Property Name,Version,Path - bgmCoder

1
它在 0.8 和 0.9 版本中以 AzureServiceManagementMode 运行,而不是 ARM 模式。在 1.0 及以上版本中,它能够很顺畅地工作。
 $name='Azure' 

    if(Get-Module -ListAvailable |  Where-Object { $_.name -eq $name })  
    {  
      (Get-Module -ListAvailable | Where-Object{ $_.Name -eq $name }) |  Select Version, Name, Author, PowerShellVersion  | Format-List;  
    }  
    else  
    {  
        “The Azure PowerShell module is not installed.” 
    }

enter image description here

干杯!!


1
在PowerShell中运行以下命令,可以获取当前的Azure PowerShell版本。 Get-Module -ListAvailable -Name Az

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接