Добрый день!Пытаюcь заставить ходить скрипт на ASR9000.
Заменил промт в Cisco.pm по совету отсюда:
http://www.perlmonks.org/?node_id=751853
на
(?m:^\\s?(?:[\\w.\/]+\:)?(?:[\\w.-]+\@)?[\\w.-]+\\s?(?:\(config[^\)]*\))?\\s?[\$#>]\\s?(?:\(enable\))?\\s*$)
Скрипт работать стал, но при выводе некоторых комманд зависает, даже по таймауту не вываливается.
Судя по input_log, это происходит, когда последняя строчка вывода попадает на "--More--"
--More-- RP/0/RSP1/CPU0:hostname#
на разных маршрутизаторах попадал на такое с "sh ver" и "sh inv".
Скрипт:
my $t = "0";
my $session = Net::Telnet::Cisco->new(Host => "$host", Errmode => "return", Timeout=> 7, Input_log => "input_log_$host.txt") or $t = "1";
if ($t != 1) {
$session->login("$login", "$pass");
my @output = $session->cmd(String =>"$command", Timeout => 4);
open(FILE, ">> $host.txt");
print FILE "@output\n";
close(FILE);
$session->close;
};
Подскажите, пожалуйста, как это исправить? Или хотя бы как сделать, чтобы все-таки по таймауту вываливался? В конце концов можно и из аутпут лога вывод брать.