ppp has asked for the wisdom of the Perl Monks concerning the following question:
I am a perl beginner and trying since sveral hoors and my code is :
use Win32::GuiTest (':ALL'); use Net::Address::IP::Local; use IO::Handle; use Browser::Open ('open_browser'); use strict; use Time::Local; use File::Copy; use warnings; no warnings 'uninitialized'; my $counter = 0; my($address) = @_; my $str; my $flag=0; my $file = 'C:\ListOfIpAdress.txt'; open my $fhi, '<', 'C:\ListOfIpAdress.txt', or die "Could not open +file $!"; open my $fho, '>', 'C:\ListOfIpAdress2.txt', or die "Could not ope +n file $!"; while (my $line = <$fhi>) { my ($a1, $a2, $a3, $Day, $sMonth, $sDate, $sTime, $SYear,$a9, + $a10) = split(/ {1,}/, $line); my $str1= $sMonth." ".$sDate." ".$sTime ; my $scTime = localtime; my ( $cDay, $cMonth, $cDate, $cTime, $cYear,$Syear) = split(/ + {1,}/, $scTime); my $str2= $cMonth." ".$cDate." ".$cTime ; use constant Year => 2015; my $t1 = convert($str1); my $t2 = convert($str2); my $Diff= $t2 - $t1; my $div = $Diff/3600; print "Total Difference in Hour is : $div \n\n"; print $fho $line unless $div > 38; } print "\nn check1 \n\n"; ##WHY IT DONT PRINT check1 and check2, A +ctually i have to delete ListOfIpAdress1.txt and rename ListOfIpAdres +s2.txt by ListOfIpAdress.txt close $fhi; close $fho; print "\nn check2 \n\n"; unlink ($file); if(-e $file) { print "File still exists!"; } else { print "File gone."; } sub convert { my $dstring = shift; my %m = ( 'Jan' => 0, 'Feb' => 1, 'Mar' => 2, 'Apr' => 3, 'May' => 4, 'Jun' => 5, 'Jul' => 6, 'Aug' => 7, 'Sep' => 8, 'Oct' => 9, 'Nov' => 10, 'Dec' => 11 ); if ($dstring =~ /(\S+)\s+(\d+)\s+(\d{2}):(\d{2}):(\d{2})/) { my ($month, $day, $h, $m, $s) = ($1, $2, $3, $4, $5); my $mnumber = $m{$month}; # production code should handle erro +rs here timelocal( $s, $m, $h, $day, $mnumber, 1900 ); } else { die "Format not recognized: ", $dstring, "\n"; } }
And file ListOfIpAdress.txt contains this data (YOU CAN TEST MY CODE BY RUNNING IT AND SAVING BOTH FILES ON 1 LOCATION)
Address: 100.64.52.98 Time Fri Jan 16 21:44:35 2015 End Address: 100.65.0.172 Time Fri Jan 16 21:46:48 2015 End Address: 100.64.58.219 Time Fri Jan 16 22:56:16 2015 End Address: 100.65.5.25 Time Fri Jan 16 23:10:04 2015 End Address: 100.64.8.184 Time Fri Jan 16 23:52:54 2015 End Address: 100.65.13.135 Time Fri Jan 16 23:59:46 2015 End
Actually i want to delete ListOfIpAdress.txt and want to rename ListOfIpAdress2.txt by it's name so my code unlink ($file); do not work (for the same reason as it do not print check1 and check2). What is the reason that it do not work ? How to make it work? (INAFCT I TRIED THE "unlink" function from another file.pl which only contained the code to delete ListOfIpAdress.txt and it worked perfectly but dont work here so that i will get the cause of problem and will never repeat in future. ) Thankyou so much!!
|
|---|