$cyrillic_mac_huawei=Proc.new { #прок для quidway для предотвращиния попыток поиска по мак-адресу с кирилическми символами
while $mac.scan(/\P{ASCII}/).size != 0 do puts "Неправильная раскладка клавиатуры. Измените на латиницу"; $mac_search_huawei.call; end
} #конец прока
$mac_search_huawei=Proc.new { #прок поиска порта по mac'у для <<<QUIDWAY>>>; позволяет циклично повторять поиск столько раз, сколько нужно
puts "\nВведите часть mac-адреса (Образец для Quidway: xxxx-xxxx-xxxx):" #необходимо для поиска порта
$mac=gets.chomp
$cyrillic_mac_huawei.call
$host.cmd("display mac-address | include #{$mac}") {|c| $dump=c; print c} #ищем порт по части mac-адреса
puts "Для продолжения наберите 'n', для повторного поиска - любой другой символ:"
$mac_search_choise=gets.chomp
until $mac_search_choise == "n" do $mac_search_huawei.call; end
} #конец прока
Не могу понять такое поведение: запускаю скрипт, выполняю поиск по вводу, все нормально. но если набрать ввод кириллицей (будет предложение сменить раскладку и автоматически запустится заново указанный выше кусок. НО при выборе пользователя далее (для продолжения n)) - код выполняется столько раз, сколько было вводов кирилицей (2,3 и более).