循环播放IF语句-Powershell

时间:2019-07-12 08:12:46

标签: powershell loops foreach

我想循环这个if语句

我已经尝试了所有类似的方法:foreachdo..whiledo..until。结果是错误的,因为他在foreach中将$i中的所有日期都放在一行中。我想要的是将$i的每个结果放在单独的行中。或在单独的流程中为每个if执行此$i声明。

function testfunction {
    $CurrentDate = Get-Date -Format yyyy-MM-dd

    $Authorization = "Bearer APIKEY"
    $Accept = "application/json"
    $Content = "application/json"
    $resource = "URL"
    $a = Invoke-RestMethod -Method Get -Uri $resource -Headers @{
        "Authorization" = $Authorization
        "Accept" = $Accept
        "Content" = $Content
    }

    $Result = @()
    foreach ($get in $a) {
        $b = $get.rows | select asset_tag, serial, notes  -First 2
        $g = $get.rows | select custom_fields -First 2
        $h = $get.rows | select Ueberschreibschutz -First 2
        $i = $get.rows.custom_fields.Ueberschreibschutz | select value -First 2
        $j = $get.rows.custom_fields | select Mediensatz -First 2
        $k = $get.rows.custom_fields.Mediensatz | select value -First 2
        $l = $get.rows |select status_label -First 2
        $m = $get.rows.status_label | select name -First 2

        $ResultItem = New-Object PSObject;
        $ResultItem | Add-Member NoteProperty "asset_tag" $b.asset_tag;
        $ResultItem | Add-Member NoteProperty "SNR" $b.serial;
        $ResultItem | Add-Member NoteProperty "status_label" $l.status_label.name;
        $ResultItem | Add-Member NoteProperty "notes" $b.notes;
        $ResultItem | Add-Member NoteProperty "Ueberschreibschutz" $g.custom_fields.Ueberschreibschutz.value;
        $ResultItem | Add-Member NoteProperty "Mediensatz" $g.custom_fields.Mediensatz.value;
        $Result += $ResultItem;

        foreach ($x in $i) {
            $x = $i | where {$_ -eq "value"}

            if ($CurrentDate -ge $g.custom_fields.Ueberschreibschutz.value) {
                Write-Host -ForegroundColor Green $b.asset_tag "ist ein" $g.custom_fields.Mediensatz.value "und es darf benutzt werden"
            } else {
                Write-Host -ForegroundColor Red $b.asset_tag "ist ein" $g.custom_fields.Mediensatz.value "und es darf nicht benutzt werden"
            }
        }
    }
    return
}

Clear-Host
$result1 = testfunction
Write-Host $result1

我希望像这样

AA-100111 ist ein B2T-M und es darf benutzt werden
BB-200222 ist ein B2T-D und es darf benutzt werden

0 个答案:

没有答案