Вы можете использовать Import-Csv для сериализации ваших CSV-данных в массиве-объекте. После этого вы можете перебрать этот массив с помощью ForEach-Object -cmdlet. В цикле вы можете вызвать Test-Connection , чтобы "пропинговать" данный сервер.
Я загрузил простую функцию на github .
function Ping-Servers{
[CmdletBinding()]
Param()
# Load CSV data to local object
$servers = Import-Csv .\servers.csv
$testResultArrayWithDictionaryAsContent = $servers | Foreach-Object{
#Iterate over the CSV rows
Write-Information "Testing $($_.Servers)"
#Call "ping" and store the result
$ctResult = Test-Connection $_.Servers;
# return a dictionary for every CSV row (including the ping result)
@{ Nas = $_.Nas; Server = $_.Servers; TestResult = $ctResult }}
$testResultArrayWithDictionaryAsContent
}
Проверьте Powershell о разделах , они предлагают классную информацию. Если вы новичок в Powershell, вам следует пройти БЕСПЛАТНЫЙ курс MVA Начало работы с Powershell . Хотя этот курс предназначен для Powershell 3.0, он является отличной отправной точкой в мире Powershell.