use Net::Telnet; use POSIX qw(strftime); my $lognamevar = strftime "%y-%m-%d", localtime; my $dumpscreen_in = "dmpscrn-in-".$lognamevar.".txt"; my $dumpscreen_out= "dmpscrn-out-".$lognamevar.".txt"; my $dumpscreen_dump= "dmpscrn-dmp-".$lognamevar.".txt"; my $user = "root"; my $pass = "root"; open(DMPSCRNIN, ">>$dumpscreen_in") || die "Cannot open Dumpscreen telnet on port 5005 for error-trapping:$!\n"; open(DMPSCRNOUT, ">>$dumpscreen_out") || die "Cannot open Dumpscreen telnet on port 5005 for error-trapping:$!\n"; $DMPSCRN_IN = *DMPSCRN_IN; $DMPSCRN_OUT = *DMPSCRN_OUT; $DMPSCRN_DMP = *DMPSCRN_DMP; tlnDumpScreen; sub tlnDumpScreen{ $dmpscreen = new Net::Telnet( Timeout=>10, Prompt=>'/.+>/', Input_log => $DMPSCRN_IN, Output_log => $DMPSCRN_OUT, Dump_Log => $DMPSCRN_DMP, Host => '192.168.6.40', Port => '5005' ); $dmpscreen->open(); $dmpscreen->waitfor('/name:/'); $dmpscreen->print($user); $dmpscreen->waitfor('/password/i'); $dmpscreen->print($pass); $dmpscreen->waitfor('/name:/'); $dmpscreen->print('getlinglines'); }