All, I'm trying to write a perl script that will telnet a device and run one of two commands based on the output from a beginning command. I'm still in the beginning stages of this, and right now I'm simply trying to print the output from the device to standard out. Reading the documentation on Net::Telnet, it should be as easy as something like this:
@lines = $t->print("who"); print @lines; But when I try something similar, my array appears to simply contain the number '1', as if something were returning true. Here the full script I'm working on now (names have been changed to protect the innocent): #!/usr/bin/perl -w # $Id$ use warnings; # or -w above use strict; use Net::Telnet; my $t = Net::Telnet->new( Timeout => 10); my $address = '10.10.10.1'; my @output; #print "I'm telnetting to $address.\n"; $t->open($address); print "Telnetting to $address\n"; $t->waitfor('/[Password:]/'); print "Logging in\n"; $t->print('password'); $t->waitfor('/[hostname>]/'); @output = $t->print('who'); $t->waitfor('/[hostname>]/'); $t->print('exit'); print "Logged out\n"; print @output; exit; And here's the output I'm getting: Telnetting to 10.10.10.1 Logging in Logged out 1 What's going on here? Am I doing something wrong? Tim Huffman Network Administrator Kruger Communications Office: 630-281-7100 ext. 335 Fax: 630-986-2495 Email: [EMAIL PROTECTED] -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>