Сделать стартовойДобавить в закладки  
Главная страничка Главная страничка
В номере:

    Выходит с 17 июля 2008 г. цена договорная

    Опрос

    Windows Mobile
    Symbian
    Android
    iPhone
    Linux
    другая
    не знаю
    у меня обычный телефон



    Календарь
    «    Февраль 2021    »
    ПнВтСрЧтПтСбВс
    1234567
    891011121314
    15161718192021
    22232425262728

    Архив новостей
    Март 2022 (1)
    Декабрь 2021 (1)
    Август 2021 (1)
    Июль 2021 (3)
    Февраль 2021 (3)
    Январь 2021 (1)

    Информация
    PowerShell ping диапазона адресов
    OS, мобильные OS » Windows
    автор: dimon, опубликовано: 9 февраля 2021

    Команда пингует диапазон адресов 172.0.254.1-172.0.254.254 и выводит результат. Плюс - хост доступен, минус - не доступен.

    1..254 | %{ping -n 1 -w 10 172.0.254.$_ > $null; if($LASTEXITCODE -eq 0) {"172.0.254.$_+"} else {"172.0.254.$_-"}}


    Результат выглядит так:

    PS C:\1..254 | %{ping -n 1 -w 10 172.0.254.$_ > $null; if($LASTEXITCODE -eq 0) {"172.0.254.$_+"} else {"172.0.254.$_-"}}
    172.0.254.1+
    172.0.254.2+
    172.0.254.3-
    172.0.254.4-
    ...
    
    172.0.254.254+


    Для себя я сделал короткий скрипт в котором сеть и диапазон ip адресов задается в начале файла скрипта в виде переменных:

    
    $adr = "172.161.254"
    $hostrange = 1..254
    
    $hostrange | %{ping -n 1 -w 10 "$adr.$_" > $null; if($LASTEXITCODE -eq 0) {"$adr.$_ +"} else {"$adr.$_ -"}}
    


    Скачать ping_range_ip.zip [294 b] (cкачиваний: 8)

    Еще немного усложним скрипт, указав две переменные, которые определяют что выводить в консоль - показывать откликнувшиеся или не откликнувшиеся хосты:

    
    $adr = "172.161.254"
    $hostrange = 1..254
    #Какие хосты показывать
    $showon = 1  # Доступные: 1 - показывать, 0 - не показывать
    $showoff = 0 # Недоступные: 1 - показывать, 0 - не показывать
    
    $hostrange | %{ping -n 1 -w 10 "$adr.$_" > $null; if($LASTEXITCODE -eq 0) {if (1 -eq $showon) {"$adr.$_ +"}} else {if (1 -eq $showoff) {"$adr.$_ -"}}}
    


    Скачать ping_range_ip_v2.zip [416 b] (cкачиваний: 11)

    Вариант три - теперь все переменные будем запрашивать в консоли PowerShell перед запуском ping-а хостов:
    write-host "Введите сеть (без точки в конце, пример 172.161.254)"
    $adr = read-host
    
    write-host "Введите начальный адрес хоста (от 1 до 254)"
    $hostrange1 = read-host
    write-host "Введите конечный адрес хоста (от $hostrange1 до 254)"
    $hostrange2 = read-host
    
    write-host "Показывать доступные хосты (1 - да, 0 - нет)"
    $showon = read-host
    write-host "Показывать недоступные хосты (1 - да, 0 - нет)"
    $showoff = read-host
    
    write-host "*** Старт ***"
    $hostrange1..$hostrange2 | %{ping -n 1 -w 10 "$adr.$_" > $null; if($LASTEXITCODE -eq 0) {if (1 -eq $showon) {"$adr.$_ +"}} else {if (1 -eq $showoff) {"$adr.$_ -"}}}


    PowerShell ping диапазона адресов


    Скачать ping_range_ip_v3.zip [541 b] (cкачиваний: 13)


    PS:

    Если при запуске скрипта получаем ошибку вида:

    PS C:\Temp> .\ping_range_ip.ps1
    .\ping_range_ip.ps1 : Невозможно загрузить файл C:\Temp\ping_range_ip.ps1, так как выполнение сценариев отключено в этой системе. Для получения дополнительных сведений см. about_Execution_Policies по адресу https:/go.microsoft.com/fwlink/?LinkID=135170.
    строка:1 знак:1
    + .\ping_range_ip.ps1
    + ~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : Ошибка безопасности: (:) [], PSSecurityException
        + FullyQualifiedErrorId : UnauthorizedAccess


    Это значит, что Windows защищает пользователя от запуска скриптов PS.
    Чтобы не понижать защищенность компьютера просто отключим эту защиту для запущенного процесса PowerShell. Это значит, что после закрытия окна PowerShell политика выполнения вернется в предыдущее состояние.

    PS C:\Temp> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
    
    Изменение политики выполнения
    Политика выполнения защищает компьютер от ненадежных сценариев. Изменение политики выполнения может поставить подугрозу безопасность системы, как описано в разделе справки, вызываемом командой about_Execution_Policies и расположенном по адресу https:/go.microsoft.com/fwlink/?LinkID=135170 . Вы хотите изменить политику выполнения?
    [Y] Да - Y  [A] Да для всех - A  [N] Нет - N  [L] Нет для всех - L  [S] Приостановить - S  [?] Справка
    (значением по умолчанию является "N"):y
    PS C:\Temp>
    

     
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Чтобы Вам были доступны все функции Вам необходимо либо зарегистрироваться, либо зайти на сайт под своим именем.

    Другие новости по теме:

  • Служебные коды Android
  • ping2log - запись в лог доступности сервера
  • Shared Folders на Sun VirtualBox
  • Утилиты командной строки для диагностики TCP/IP
  • VBS скрипт изменения описания удаленного компьютера


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

    Оставить комментарий



     
    Информация
     
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


    Поиск по сайту:


    Облако тегов
    Android, Arduino, backup, CentOS, cmd, css, div, DLE, DLE хаки, domoticz, dzvents, event, Home Assistant, HomeAssistant, Linux, log, Monster, ogf3, RDP, Template, VBS, windows, WSH, бумага, бумажный самолетик, иструкция, Карты, кино, Навигация, оригами, программа, рецензия, рецепт, скрипт, уведомления, фигуры, шаблон, Яндекс, яндекс-карты

    Показать все теги
    Реклама
    раскрутка сайта бесплатно
    Главная страница | Регистрация | Добавить новость | Новое на сайте | Статистика | Поддержка | Правила ресурса Copyright © 2005-2021 by dimon - all right reserved!
    Тираж:           экземпляров.   Дизайн, верстка by dimon