http://qs321.pair.com?node_id=710372


in reply to Re: A little demo for Net::SSH2
in thread A little demo for Net::SSH2

To use Shell method on Active Perl on windows use:

#!/usr/bin/perl
use warnings;
use strict;
use NET::SSH2;

my $host = ""; # use the ip host to connect
my $user = ""; # your account
my $pass = ""; # your password

my ($len, $buf);

my $ssh2 = Net::SSH2->new();
#$ssh2->debug(1);
if ($ssh2->connect($host)) {
if ($ssh2->auth_password($user,$pass)) {
#shell use
my $chan = $ssh2->channel();
$chan->shell();

$chan->write("ls -a\n");
select(undef,undef,undef,0.2);
print $buf while ($len = $chan->read($buf,512)) > 0;

$chan->write("who\n");
select(undef,undef,undef,0.2);
print $buf while ($len = $chan->read($buf,512)) > 0;
#$chan->send_eof();
$chan->close;
} else {
warn "auth failed.\n";
}
} else {
warn "Unable to connect Host $@ \n";
}