Как экспортировать результат в .csv?с ServerName в качестве первого столбца и онлайн / офлайн в качестве второго столбца - PullRequest
0 голосов
/ 27 декабря 2018

Я пытаюсь экспортировать результат powershell в csv с $ server в качестве первого столбца и online / offline в качестве второго столбца.Есть много столбцов, которые я хочу определить на самом деле.Я думаю, что это хорошее начало.Пожалуйста, дайте мне знать, как этого добиться.

$ErrorActionPreference = 'SilentlyContinue'
$ServerName = "TDL498", "TDL498123", "TDL498456"
foreach ($Server in $ServerName)
{

    if (test-Connection -ComputerName $Server -Count 2 -Quiet)
    {

        write-Host "$Server Online" -ForegroundColor Green 
    }
    else
    {
        Write-Host "$Server Offline"

    }
} 

1 Ответ

0 голосов
/ 27 декабря 2018

вы можете сделать это, создав PSCustomObject.[ grin ], насколько я могу судить, нет необходимости устанавливать какую-либо специальную обработку ошибок с помощью командлета Test-Connection, поскольку он возвращает False/True для тестов соединения с параметром -Quiet.

$ComputerNameList = @(
    'LocalHost'
    '10.0.0.1'
    '127.0.0.1'
    'BetterNotBeThere'
    $env:COMPUTERNAME
    )

$Results = foreach ($CNL_Item in $ComputerNameList)
    {
    [PSCustomObject]@{
        ComputerName = $CNL_Item
        Online = Test-Connection -ComputerName $CNL_Item -Count 1 -Quiet
        }
    }

# on screen
$Results

# to csv file
$Results |
    Export-Csv -LiteralPath "$env:TEMP\MuhammadSuhailAsrulsani_ComputerStatus.csv" -NoTypeInformation

вывод на экран ...

ComputerName     Online
------------     ------
LocalHost          True
10.0.0.1          False
127.0.0.1          True
BetterNotBeThere  False
[MySysName]        True

Содержимое файла CSV ...

"ComputerName","Online"
"LocalHost","True"
"10.0.0.1","False"
"127.0.0.1","True"
"BetterNotBeThere","False"
"[MySysName]","True"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...