Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Net::SSH::Expect command returns command itself

by Sterh (Novice)
on Sep 07, 2012 at 15:45 UTC ( #992332=perlquestion: print w/replies, xml ) Need Help??
Sterh has asked for the wisdom of the Perl Monks concerning the following question:

Hello , please help to figure out why ssh commands returns only commands themselves as output.

$ssh = Net::SSH::Expect->new ( host => "$connectIP", password=> 'pass', user => 'Admin', port => '22', raw_pty => 1, timeout => 10 ); $ssh->run_ssh() or die "SSH process couldn't start: $!"; $ssh->waitfor('password: '); $ssh->send("pass"); $ssh->waitfor('\>.* '); $ssh->send("server security authentication=local,radius"); $ssh->waitfor('\>.* '); $ssh->send("y"); $ssh->waitfor('\>.* '); my $line; while ( defined ($line = $ssh->read_all()) ) { print $line . "\n"; }

I tried also login -> exec construction , also does not work for me. Please point me what I am doing wrong . Thank you Dmitry

Replies are listed 'Best First'.
Re: Net::SSH::Expect command returns command itself
by aitap (Curate) on Sep 07, 2012 at 19:46 UTC
    boolean waitfor($pattern [,$timeout])
    # boolean waitfor ($string [, $timeout, $match_type]) # This method reads until a pattern or string is found in +the input stream. # All the characters before and including the match are re +moved from the input stream.
    This can be the error cause: waitfor removes all the text until the prompt, including the command output. No ideas how to work it out, though.
    Sorry if my advice was wrong.
      why you don't copy the error message from your command here?

        There was no error message. So solution was to add "\r" at the end of command

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://992332]
Front-paged by Arunbear
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (4)
As of 2018-05-23 03:34 GMT
Find Nodes?
    Voting Booth?