В Azure, чтобы получить сведения о балансировщике нагрузки в CSV-файл с помощью сценария PowerShell - PullRequest
0 голосов
/ 06 мая 2020

Я написал сценарий PowerShell в конвейере Azure DevOps, чтобы получить сведения о балансировщике нагрузки, такие как FrontendIPConfigurationsName, FrontendIPAddress, в файл csv. AM получает эти данные, но имена FrontendIPConfigurationsNames, которые начинаются с того же имени, как «ers-A1, ers-B1, ers-C1, ers-D1», идут в той же строке. Но я хочу расположить их в разных строках. Пожалуйста, предложите

$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

1 Ответ

0 голосов
/ 06 мая 2020

Вы можете сделать что-то подобное, чтобы расположить объекты в отдельных строках.

$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
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...