Как добавить 2 столбца в моем отчете PowerShell HTML? - PullRequest
0 голосов
/ 14 марта 2019

У меня есть скрипт PowerShell, я написал этот код:

$computers  = Get-Content D:\Dev\Powershell\Powershell_TXT_FILE\pickup1.txt | Where {
    -not ($_.StartsWith('#'))
} | foreach {
    if (Test-Connection $_ -Quiet -Count 1) {
        New-Object psobject -Property @{
            Server = $_
            Status = "Online"
        }
    } else {
        New-Object PSObject -Property @{
            Server = $_
            Status = "Offline"
        }
    }
}
$computers | ConvertTo-Html -Property Server | Foreach {
    if ($_ -like "*<td>Online</td>*" ) {
        $_ -replace "<tr>","<tr bgcolor=green>"
    } else {
        $_ -replace "<tr>","<tr bgcolor=red>"
    }
} | Out-File D:\Share\Powershell\Powershell_TXT_FILE\test.html

Как добавить 2 или 4 столбца в скрипт. Я хочу получить такой вывод:

screenshot

1 Ответ

0 голосов
/ 14 марта 2019

Вы хотите, чтобы столбцы 3 и 4 существовали, но всегда были пустыми?

Если это так, попробуйте:

$computers  = Get-Content D:\Dev\Powershell\Powershell_TXT_FILE\pickup1.txt | Where {
    -not ($_.StartsWith('#'))
} | foreach {
    if (Test-Connection $_ -Quiet -Count 1) {
        New-Object psobject -Property @{
            Server = $_
            Status = "Online"
        }
    } else {
        New-Object PSObject -Property @{
            Server = $_
            Status = "Offline"
        }
    }
}
$computers | ConvertTo-Html -Property Server | Foreach {
    if ($_ -like "*<td>Online</td>*" ) {
        $_ -replace "<tr>","<tr bgcolor=green>"
    } else {
        $_ -replace "<tr>","<tr bgcolor=red>"
} | %{$_ -replace "</td></tr>","</td><td>&nbsp;</td><td>&nbsp;</td></tr>"}
} | Out-File D:\Share\Powershell\Powershell_TXT_FILE\test.html

Это добавляет два столбца с пробелом в конце каждой строки в вашей таблице. (на основе значения в таблице HTML.

Теперь, если вы не возражаете против заголовков, проще добавить в первую строку нужные вам поля данных.

$computers  = Get-Content D:\Dev\Powershell\Powershell_TXT_FILE\pickup1.txt  | Where { -not ($_.StartsWith('#')) | select *,xx,yy

где XX и YY - два добавленных вами поля в вашей таблице HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...