проверка ping для нескольких серверов — powershell

#powershell #powershell-2.0 #powershell-3.0 #powershell-4.0

#powershell #powershell-2.0 #powershell-3.0 #powershell-4.0

Вопрос:

как проверить переменные в каждой строке текстовой области и проверить их на ping

 foreach ($textbox1 in $textbox1) {

    if (test-Connection -ComputerName $textbox1 -Count 2 -Quiet)
    {
        $path = "$([Environment]::GetFolderPath("Desktop"))ping.txt";
        "$textbox1 is Pinging " | fl > $path; notepad $path;

    }
    else
    {
        $path = "$([Environment]::GetFolderPath("Desktop"))notping.txt";
        "$textbox1 not pinging" | fl > $path; notepad $path;

    }
}
  

Я хочу проверить каждую переменную в текстовой области по отдельности и проверить их каждую, выполняет ли она пинг или нет

Комментарии:

1. Я не понимаю, в чем ваша проблема, у вас есть вопрос?

2. @nkasco У меня есть текстовое поле, в котором я хочу ввести список компьютеров и проверить, может ли он выполнять ping или нет… я думаю, что мы можем использовать цикл foreach здесь, пожалуйста, посоветуйте

Ответ №1:

Основываясь на вашем комментарии, я буду использовать пример получения содержимого из текстового файла:

 $Servers = gc "(path to txt file, 1 server per line)"

foreach($Server in $Servers){
    if (Test-Connection -ComputerName $Server -Count 2 -Quiet) {    
        Write-Host "$Server is Pinging "    
    } else {
        Write-Host "$Server not pinging"    
    }
}
  

Комментарии:

1. однако для этого будут получены входные данные из текстового файла, у меня есть текстовое поле, где пользователь введет имя компьютера, чтобы проверить статистику ping ‘foreach ($textbox1 в $ textbox1) { if (test-Connection -ComputerName $ textbox1 -Count 2 -Quiet) { «$ textbox1 выполняет пинг» } else { «$ textbox1 не выполняет пинг» } }’

2. Если вы даже не знакомы с функцией foreach (которая, кстати, не использовалась должным образом в вашем примере), то я настоятельно не советую этого делать, поскольку вы не готовы начать пытаться создавать инструменты типа GUI. Пока придерживайтесь консоли или, как я предложил, импортируйте из текстового файла. Попробуйте $computer = read-host "Enter a computer to ping"

3. вот почему я здесь, чтобы получить помощь от экспертов.. я могу сделать это через консоль .. если вы можете помочь, пожалуйста, сделайте это..

4. @esperento57, пожалуйста, проверьте

5. Это не сайт «сделай это за меня». Это сайт, который поможет вам устранить неполадки в коде, который не работает. Если вы даже не пытались написать код для создания текстового поля, вы не найдете здесь никого, кто сделает это за вас.