#!/usr/bin/perl -T $cntrfl = "./counter"; $target = "http://www.atmif.com/qsdt/qsdt_excerpt.pdf"; ($mm, $yy) = (localtime)[4,5]; $new_prd = sprintf("%04d-%02d", 1900+$yy, $mm+1); open (CNTR, "+>> $cntrfl") or exit; flock(CNTR, LOCK_EX); seek(CNTR, 0, 0); while ( $line = ) { last if ( eof(CNTR) ); $addr = tell(CNTR); } ($old_prd, $crrnt_cntr, $ttl_cntr) = split(/\s+/, $line); if ( $new_prd eq $old_prd ) { truncate(CNTR, $addr); ++$crrnt_cntr; } else { $crrnt_cntr = 1; } ++$ttl_cntr; seek(CNTR, 0, 2); $outln = sprintf "%s %4d %6d\n", "$new_prd", $crrnt_cntr, $ttl_cntr; print CNTR "$outln"; close (CNTR); print "Location: $target\n\n";