in reply to Re^5: Losing my mind with Net::OpenSSH and Expect
in thread Losing my mind with Net::OpenSSH and Expect
I don't really want the program to die
Well, you can catch die's wrapping them inside and eval block. Or you can handle errors in a different way, for instance, using the return value from the expect method:
Regarding the error you get:my $r = $expect->expect(2, [ qr/configtest:/ => sub { shift->send("$pass2 +\n"); exp_continue;} ], [ qr/Sorry/ => sub { print "Login failed +\n" } ], [ qr/.*#\s+/ => sub { print shift->match +}] ); if (!defined $r) { print "Timeout!\n"; } elsif ($r == 3) { $expect->interact(); } else { print "Login failed!\n"; }
You have some error in your script but without seeing the source code it is difficult to say what! You are probably not declaring the variable $expect in the right scope.Variable "$expect" is not imported at ./test.pl line 28. (Did you mean &expect instead?)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^7: Losing my mind with Net::OpenSSH and Expect
by rastoboy (Monk) on Mar 03, 2011 at 18:29 UTC | |
|
Re^7: Losing my mind with Net::OpenSSH and Expect
by rastoboy (Monk) on Mar 06, 2011 at 18:53 UTC |