查找所有已停止或没有部署的云服务(经典)

Find all Cloud Services (Classic) which are stopped or have no deployments

我正在尝试编写一个脚本,为我提供 Azure 中未使用的云服务列表。未使用,我的意思是哪些已停止或没有部署。

我想出了如何使用应用服务来完成它,但由于经典模型而坚持使用云服务。我相信它需要不同的方法来调用它的属性等。

谁能帮我挖掘一下,或者用什么方法、cmdlet 来获取这些属性?

提前致谢!

我以为它会有类似的东西:

    function check_site {
Write-Output "------------------------------------------"
Write-Output "Microsoft.Web/sites"
Write-Output "------------------------------------------"
$RT = "Microsoft.Web/sites"
$apps = Get-AzureRmResource -ODataQuery "`$filter=resourcetype eq 'Microsoft.Web/sites'"
foreach($app in $apps){
    $full_app = Get-AzureRmResource -ResourceGroupName $app.ResourceGroupName -ResourceType $RT -ResourceName $app.Name
    if("Running" -ne $full_app.Properties.state)
    {
         = Get-AzureRmResource -ResourceGroupName $app.ResourceGroupName -ResourceType $RT -ResourceName $app.Name | Select-Object -ExpandProperty Name
        'App Service: ' + 
    }
}}

对于云服务,您应该使用Get-AzureService 来获取详细信息。然后就可以通过相关的属性判断是否停止了。

如果您在 运行 此 cmdlet 时收到一些错误,请先使用 Add-AzureAccount cmdlet。

测试结果: