• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 783
  • Last Modified:

Trying to script a telnet session.

Trying to script a telnet session. I can't get any command output for the telnet command. For the attached code, output is:

C:\>test_ping.pl
Done TELNET

changing the command to

open (TELNET, "echo telnet 172.20.1.254|");

The output is:

C:\>test_ping.pl
telnet 172.20.1.254
Done TELNET

#!perl
use warnings;
use strict;
 
my $Response;
 
open (TELNET, "telnet 172.20.1.254|");
while ($Response = <TELNET>){
	print $Response;
}
print "Done TELNET\n";
exit;

Open in new window

0
HilltownHealthCenter
Asked:
HilltownHealthCenter
1 Solution
 
Adam314Commented:
You won't be able to open a pipe with telnet.  You can use the NET::Telnet module instead

See here:
    http://search.cpan.org/~jrogers/Net-Telnet-3.03/lib/Net/Telnet.pm
#!perl
use warnings;
use strict;
use Net::Telnet;
 
my $Response;
 
my $telnet = Net::Telnet->new();
$telnet->open("172.20.1.254")
  or die "Could not open connection\n";
 
while ($Response = $telnet->getline){
        print $Response;
}

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now