#!/usr/bin/perl use strict; use warnings; use File::Find; use vars qw/%files_watch/; use vars qw/%files_regional/; ####################################################### sub findNewestFiles { my $element = $File::Find::name; return if (!-f $element); SUB fucntion that finds the newst file $files_watch{$element} = (stat($element))[10]; $files_regional{$element} = (stat($element))[10]; } ####################################################### ####################################################### # MAIN ####################################################### my $image_magick_exe = "composite.exe\""; my $pic_dir ="C:\\eterra\\eterravision\\weather"; my $watch_dir = "C:\\eterra\\eterravision\\weather\\watch"; my $regional_dir = "C:\\eterra\\eterravision\\weather\\regional"; open (OUT, ">>names.txt")|| die "did not open file\n"; ################################################################# find(\&findNewestFiles, $watch_dir); my $newestfile_watch; my $time_watch = 0; while(my ($t1, $t2) = each(%files_watch)) { if ($t2 > $time_watch) { $newestfile_watch = $t1; $time_watch = $t2; } } $time_watch = localtime($time_watch); ################################################################# ################################################################## find(\&findNewestFiles, $regional_dir); my $newestfile_regional; my $time_regional = 0; while(my ($t3, $t4) = each(%files_regional)) { if ($t4 > $time_regional) { $newestfile_regional = $t3; $time_regional = $t4; } } $time_regional = localtime($time_regional); #print"$newestfile_regional\n"; ################################################################## $newestfile_watch=~s/\//\\/g; #replacing the "/" in the file path to "\"" $newestfile_regional=~s/\//\\/g; #print "$newestfile_watch\n"; my @temp = split(/_/, $newestfile_regional); my $type = $temp[0]; my $date = $temp[1]; my $time = $temp[2]; #print "$date\_$time\n"; my $check= "$pic_dir/radarwatch\_$date\_$time"; if ($newestfile_watch eq $newestfile_regional){ $newestfile_regional =~ s/watch\\watchwarnings/regional\\regionalradar\_$date\_$time/; } unless (-e $check) { system("\"$image_magick_exe \"$newestfile_regional\" \"$newestfile_watch\" \"$pic_dir\\radarwatch\_$date\_$time\""); print"file created\n"; } print OUT "regional is [$newestfile_regional]\n"; print OUT " watch is [$newestfile_watch]\n\n\n"; print OUT "END OF LINE\n";