fav-02.pl to HTML.

index -|- end

Generated: Tue Feb 2 17:54:31 2010 from fav-02.pl 2005/11/10 2.3 KB.

#!/Perl
print "Hello, World...\n";
if( !defined( $ENV{'USERPROFILE'} ) ) {
   print "Can NOT locate USERPROFILE in ENVironment!\n";
   exit(1);
}
my $ff = $ENV{'USERPROFILE'} . '\\Favorites';
if( !( -d $ff ) ) {
   print "Folder $ff is NOT a directory!\n";
}
my $logfil = "templog.csv";
my $basedir = $ff;
my $blen = length($basedir);
my ($fn,$ffn,$LF);
my @dirs = ($ff);
my @fils = ();
open $LF, ">$logfil" or die "Can NOT open LOG file $logfil!\n";
##print "Processing $ff ...\n";
##opendir( DIRHAND, $ff );
##my @files = readdir( DIRHAND );
##closedir( DIRHAND );
##print "Found " . scalar @files . " entries ...\n";
##get_lists(@files);
my $fcnt = scalar @fils;
my $dcnt = scalar @dirs;
#print "Found $fcnt files, and $dcnt directories ...\n";
while (scalar @dirs) {
   local @dir2 = @dirs;
   @dirs = ();
   while ($fn = shift @dir2) {
      do_dir($fn);
   }
}
$fcnt = scalar @fils;
$dcnt = scalar @dirs;
print "Total: $fcnt URL files ...\n";
foreach $fn (@fils) {
   # process each file
   local $FH;
   if ( open( $FH, $fn ) ) {
      local @lns = <$FH>; # slurp in the lines
      local $sn = sb($fn);
      ###prt( "Processing " . sb($fn) . " of " . scalar @lns . " lines ...\n");
      close( $FH );
      local $line;
      foreach $line (@lns) {
         if( $line =~ /^URL=/ ) {
            local $u = substr($line,4); ## ~ s/^URL=//;
            prt( "\"$sn\",$u" );
         }
      }
   } else {
      print "Unable to open file $fn ...\n";
   }
}
sub get_lists {
   ###foreach $fn (@files) {
   while ($fn = shift @_) {
      next if ($fn eq '.');
      next if ($fn eq '..');
      $ffn = $ff . '\\' . $fn;
      if( -d $ffn ) {
         push(@dirs, $ffn);
      } else {
         if ($fn =~ /\.url$/i) {
            push(@fils, $ffn);
         } else {
            print "Discarding file $ffn ...\n";
         }
      }
   }
   $fcnt = scalar @fils;
   $dcnt = scalar @dirs;
   print "Found $fcnt files, and $dcnt directories ...\n";
}
sub do_dir {
   local ($dn) = @_;
   print "Processing $dn ...\n";
   opendir(DIRH, $dn);
   local @f = readdir(DIRH);
   closedir(DIRH);
   print "Found " . scalar @f . " entries ...\n";
   $ff = $dn;
   get_lists(@f);
}
sub prt {
   #print @_;
   print $LF @_;
}
sub sb {
   local ($f) = @_;
   local $b2 = quotemeta($basedir);
   ###$f =~ s/^$basedir//;
   ###$f = substr( $f, (length($basedir) + 1) );
   ##$f = substr( $f, ($blen + 1), (length($f) - $blen - 5) );
   $f =~ s/^$b2\\//;
   $f =~ s/\.url$//;
   return $f;
}
#eof

index -|- top

checked by tidy  Valid HTML 4.01 Transitional