Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在哪里可以获得AzureResourceManager cmdlet的ResourceGroup?_Azure_Azure Powershell - Fatal编程技术网

在哪里可以获得AzureResourceManager cmdlet的ResourceGroup?

在哪里可以获得AzureResourceManager cmdlet的ResourceGroup?,azure,azure-powershell,Azure,Azure Powershell,新的和即将取代的AzureRsourceManager cmdlet都需要-ResourceGroupName参数。我应该从哪里得到这个?不包括用户界面,因为这基本上不符合自动化的目的 目前,我正在呼叫获取AzureResourceGroup并尝试每一个,直到找到一个目标。这是非常缓慢的-大约几分钟。例如,为了获取WebApp信息,我运行这个 $groups = Get-AzureResourceGroup foreach ($g in $groups) { if ($ResourceG

新的和即将取代的AzureRsourceManager cmdlet都需要
-ResourceGroupName
参数。我应该从哪里得到这个?不包括用户界面,因为这基本上不符合自动化的目的

目前,我正在呼叫
获取AzureResourceGroup
并尝试每一个,直到找到一个目标。这是非常缓慢的-大约几分钟。例如,为了获取WebApp信息,我运行这个

$groups = Get-AzureResourceGroup
foreach ($g in $groups)
{
    if ($ResourceGroup) { $ResourceGroup.Value = $g.ResourceGroupName }
    $app = Get-AzureWebApp -Name $Name -ResourceGroupName $g.ResourceGroupName -ErrorAction SilentlyContinue
    Write-Verbose "Checking $($g.ResourceGroupName)"
    if ($app)
    {
        $ResourceGroups[$g.ResourceGroupName] = @($ResourceGroups[$g.ResourceGroupName]) + $Name
        return $app
    }
}

如果你转到门户并导航到你的web应用,你可以很容易地看到它所在的资源组。请参见下面的屏幕截图。资源组是对资源进行分组的任意名称。例如,您可以看到它正在对两个Web应用和两个应用服务计划进行分组


您可以使用Azure PowerShell中的获取AzureRmResourceGroupPowerShell命令,无需任何参数即可以非常快的响应时间获取所有资源组

参考链接:


注意:您需要将Azure PowerShell更新为此新功能的最新版本。当前版本是1.0.1(2015年11月更新)

正如@theadriangreen在他的评论中指出的那样,直接查询RESTAPI更快。我发现有些RM cmdlet实际上是这样做的


我在中编写了一组PowerShell函数,以使API的使用更简单、更快(使用缓存)。

谢谢您的回答,但是浏览UI却无法达到编写脚本的目的。我已经澄清了我的问题。您的解决方案是仅使用cmdlet的最佳解决方案。如果您想要更快的解决方案,那么可以尝试直接查询Azure REST API。例如,访问以下URL是为了列出给定订阅的所有站点:GET AzureRmResource将为您提供订阅中所有资源的列表-尽管您的问题并不十分清楚您试图实现的目标。你的最终目标是什么…@MichaelB我正在尝试检索Azure WebApp信息。在cmdlet的“旧”版本中,您只需要提供
名称
,可能还需要提供
插槽