Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^2: A little demo for Net::SSH2

by radici (Initiate)
on Sep 10, 2008 at 14:23 UTC ( #710369=note: print w/replies, xml ) Need Help??


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"; }

Replies are listed 'Best First'.
Re^3: A little demo for Net::SSH2
by TGI (Parson) on Aug 21, 2009 at 03:09 UTC

    Thanks for the start, but I found your code would hang on my system. But, all I had to do was make the channel non-blocking and it worked.

    if( $ssh2->connect($host) ) { if( $ssh2->auth_password($user,$pass) ) { #shell use my $chan = $ssh2->channel(); $chan->blocking(0); $chan->shell(); $chan->write("ls -a\n"); select(undef,undef,undef,0.2); print $buf while defined ($len = $chan->read($buf,512)); $chan->write("who\n"); select(undef,undef,undef,0.2); print $buf while defined ($len = $chan->read($buf,512)); $chan->close; } else { warn "auth failed.\n"; } }


    TGI says moo

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://710369]
help
Chatterbox?
[Corion]: A good morning to you too, marto!
[marto]: hey Corion, good weekend?
[prospect]: Thank you
[marto]: no problem prospect
[Corion]: I hope you all spent a good weekend!
[Discipulus]: good morning eumonks!
[Discipulus]: yes thanks, mostly at seaside, but the waterpolo tournemts went bad, very bad.. ;=(
[marto]: hey Discipulus, Corion a reasonable weekend. The boys first trip to the cinema

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (8)
As of 2017-07-24 08:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    I came, I saw, I ...
























    Results (348 votes). Check out past polls.