繁体   English   中英

在 Azure 中,使用 powershell 脚本在 csv 文件中获取负载均衡器详细信息

[英]In Azure, To get Load balancer details in to csv file using powershell script

我在 Azure DevOps 管道中编写了 powershell 脚本,以在 csv 文件中获取负载均衡器详细信息,例如 FrontendIPConfigurationsName、FrontendIPAddress。 我正在获取这些详细信息,但以“ers-A1,ers-B1,ers-C1,ers-D1”等相同名称开头的 FrontendIPConfigurationsNames 出现在同一行。 但我想把它们放在不同的行中。请建议

$excel = @()
LBlist = Get-AZLoadBalancer | Where-Oject {$_.ResourceGroupName -clike '$(grp-wildcard)'} | Select-Object
foreach ($LB in LBlist)
$Array =""| Select-Object ResourceGroupName, FrontendIPConfigurationsName,FrontendIPAddress
$Array.ResourceGroupName =$LB.ResourcegroupName
$Array.FrontendIPConfigurationsName = ($LB.FrontendIpConfigurationsName.name -join ',')
$Array.FrontendIPAddress =($LB.FrontendIpConfigurations.PrivateIpAddress -join ',')
}
$excel +=$Array
$excel |Format-Table ResourceGroupName, FrontendIPConfigurationsName,FrontendIPAddress
$excel | Export-Csv -NTI -Path "($Build.ArtifactStagingDirectory)/LBlist.csv

您可以执行与此类似的操作来获取不同行上的对象。

$LBlist = Get-AZLoadBalancer | Where-Object { $_.ResourceGroupName -clike '$(grp-wildcard)' }

$LBlist | Export-Csv -NTI -Path "$(Build.ArtifactStagingDirectory)/LBlist.csv"

模拟Get-AZLoadBalancer (不确定它是否完全准确,因为我从未使用过 Az Powershell)

function Get-AZLoadBalancer() {
    $obj = @(
        [PSCustomObject] @{
            ResourceGroupName = '$(grp-wildcard)'
            FrontendIPConfigurationsName = 'ers-A1'
            FrontEndIPAddress = '1.2.3.4'
        },
        [PSCustomObject] @{
            ResourceGroupName = '$(grp-wildcard)'
            FrontendIPConfigurationsName = 'ers-B1'
            FrontEndIPAddress = '1.2.3.5'
        }
    )
    return $obj
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM