Hi, I tried that warn(and next) still its not logging into the next host...........Kindly help me with this
Thanks, Monnappa On Wed, Mar 4, 2009 at 4:53 PM, Dermot <paik...@googlemail.com> wrote: > 2009/3/4 monnappa appaiah <monnapp...@gmail.com>: > > Hi all, > Hi > > > Hi i'm able to connect to mulitple hosts now and it will login to all the > > hosts specified in the input file (input.txt) > > > > > if there is a host which doesn't exist in input file (input.txt), the > > program ends without going to the next host in the file > > > > > > > > for example: if the input.txt has three hosts ( host1, host2 and host3), > > assuming that host2 doesn't exist.....then it will not login to host2 and > > execute the command and give the output. > > > > > > i also tried warn instead of die.............can somebody help me with > this, > > i have pasted my code below > > > > I would have thought that warn (and next) would have been exactly what > you want. You could try this > > > > > #!/usr/bin/perl -w > > use strict; > > use warnings; > > > > use Net::SSH2; > > > > use constant BUFLEN => 10_000; > > > > open my $input, '<', 'input.txt' or die $!; > > open OUTPUT, '>', 'output.txt' or die $!; > > > > while (<$input>) { > > chomp; > > my $ssh2 = Net::SSH2->new; > > $ssh2->connect($_) or warn "Unable to connect host $_\n" and next; > > >$ssh2->auth_password('<username>','<password>'); > > my $chan = $ssh2->channel; > > $chan->exec('ls -al'); > > > > my $buf; > > my $read = $chan->read($buf, BUFLEN); > > die 'More than ', BUFLEN, ' characters in listing' if $read >= BUFLEN; > > print OUTPUT "$buf\n"; > > print OUTPUT "\n\n\n"; > > print OUTPUT > > > "----------------------------------------------------------------------------------------------------------------"; > > $chan->exec('exit'); > > $ssh2->disconnect; > > > > > > Thanks, > > Monnappa > > > Good luck, > Dp. > > -- > To unsubscribe, e-mail: beginners-unsubscr...@perl.org > For additional commands, e-mail: beginners-h...@perl.org > http://learn.perl.org/ > > >