#!/usr/bin/perl -T
use Benchmark;
my $t0 = Benchmark->new;
use strict;
use warnings;
use CGI::Carp qw(fatalsToBrowser);
use utf8;
use open qw/:std :utf8/;
use encoding 'utf8';
use FileHandle;
my $search_dir = "/media/MediaLibrary/Audio";
my $database = "/var/www/testDB.dat";
print "Content-type: text/html; charset=utf-8\n\n";
my @mp3s = &GetTheFiles( $search_dir );
my $t1 = Benchmark->new;
my $td = timediff($t1, $t0);
my $benchmarktime = timestr($td);
print "
\n
\n".$benchmarktime;
sub GetTheFiles {
my @dirs = @_;
my (@allfiles, @files) = ();
my ($currdir, $file) = "";
while (@dirs != 0) {
$currdir = pop( @dirs );
opendir( ENTRIES, "$currdir/" );
@allfiles = readdir( ENTRIES );
closedir( ENTRIES );
for $file (@allfiles) {
if (-d "$currdir/$file") {
push( @dirs, "$currdir/$file" ) if (($file ne ".") && ($file ne ".."));
}
else {
my $entry = "$currdir/$file";
utf8::encode($entry);
print $entry."
\n";
my $fh = FileHandle->new('>>' . $database) || die "Could not open $database - $_";
print $fh "$entry\n";
$fh->close || die "Could not close $database - $_";
}
}
}
return 0;
}
# EOF