Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Системное программирование > net::Telnet проблема постраничного вывода...


Автор: LastSpring 28.9.2007, 11:44
здравствуйте..
такая проблема: скрипт считывает результат выполнения команды...но он выводится постранично ..типа команды "more" в линуксе...с приглашением нажать пробел для просмотра следующей страницы или ескейп для отмены...
как можно сделать чтоб можно было считать полностью весь вывод..

$line=$t->get;  считывает только первую страницу и останавливается..

@lines = $t->cmd("cmd"); вылетает по таймауту так как ищет промт а вместо него видит приглашение нажать пробел...

как же нажать этот "пробел"?

заранее спасибо........

Автор: tba 28.9.2007, 15:47
Попробуйте после получения сессии

$t->cmd("set terminal 0"); # для роутера

или

$t->cmd("set length 0"); # для коммутатора

Автор: LastSpring 29.9.2007, 11:08
а что значат эти команды? 
шлюз - МАХ ТNT ..............
у него есть параметр terminal-mode . это не тоже самое??

Автор: Nab 29.9.2007, 12:08
А не олучше решить проблему другим способом?

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

2. Можно попробовать в свойствах окна тераминала указать количество строк очень большое, чтоб на страницу все и влезло...

Автор: tba 30.9.2007, 21:46
Цитата(LastSpring @ 29.9.2007,  11:08)
а что значат эти команды? 
шлюз - МАХ ТNT ..............
у него есть параметр terminal-mode . это не тоже самое??

Эти команды выключают paging на терминалах cisco устройств (поскольку я работал в основном с такими устройствами, а вы ваше не указали). Команды взяты из документации к модулю Net::Telnet::Cisco. 
Собственно, правильный совет вам уже дали(искать команду, выключающую paging)

Автор: LastSpring 3.10.2007, 11:57
увы..перерыл все доки по МАХу.спрашивал..не нашел команды отключающую пейджинг...
но все равно спасиба за советsmile

Автор: shamber 3.10.2007, 13:15
может комадна print поможет.
посмотреть снифером что шлет telnet если нажать пробел. И потом самому посылать print.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)