Get-AzureRmServiceBusNamespace -Name

问题描述

我正在尝试使用 Get-AzureRmServiceBusNamespace 模块通过 -Name 参数检索特定的服务总线命名空间。

此 cmdlet 的 documentation 表示此参数可用于通过资源组检索特定命名空间或命名空间组。当我尝试这样做时,响应包括 all 命名空间。我还尝试使用此参数的别名 (NamespaceName)。有趣的是,-ResourceGroupName 参数确实缩小了结果的范围。我可以通过在 Where-Object 属性上使用过滤器将输出传送到 Name cmdlet 来检索特定的 ServiceBus,但这感觉很笨拙。

知道我做错了什么吗?

解决方法

当您传递不同的参数时,此命令本质上会调用不同的 REST API。

如果不带任何参数(即 Get-AzureRmServiceBusNamespace)直接运行它,它将列出订阅中的所有命名空间,即调用 API Namespaces - List

如果传递资源组名称,它将列出资源组中的所有命名空间,即调用 Namespaces - List By Resource Group

所以在你的情况下,如果你想获得一个特定的命名空间,你需要传递资源组和命名空间名称,即调用 Namespaces - Get

Get-AzureRmServiceBusNamespace -ResourceGroup <resourceGroupName> -NamespaceName <namespaceName>

此外,旧的 AzureRM 模块已被弃用,我建议您改用新的 Az 命令 Get-AzServiceBusNamespace

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...