in reply to help on Net::SSH2
use strict; use warnings;
Next, the following code is what works for me under Net::SSH2:
use strict; use warnings; use Net::SSH2; my $ssh2 = Net::SSH2->new(); $ssh2->connect('example.com') or die ("SSH2 Connect Error: $!"); if ($ssh2->auth_keyboard('password')) { my $chan = $ssh2->channel() or die ("Channel Create Error: $@"); $chan->exec('ls') or die ("Channel Exec: $@"); } else { die ("Password Error"); }
With the above code, you'll be able to find out if its connecting. If the code 'die's, then its not actually connecting.
You should note that when you do an 'exec' that it uses a perl exec (http://search.cpan.org/~nwclark/perl-5.8.7/pod/perlfunc.pod#exec) which executes a system command and never returns. You may want to open up a shell and execute the command and then return the output since the will act more like system and less like exec.
Eric
|
|---|