use Net::SSH::Perl; while (my $server = ) { chomp $server; print $server; my $ssh = SSHConnect($server); ... } sub SSHConnect { my $server = shift; my $ssh = Net::SSH::Perl->new($server,protocol=>'2,1'); eval { $ssh->login(); }; if ($@) { warn "Some error message about $server"; }; return $ssh; }