Ich benutze File::find, um rekursiv ein bestimmtes Verzeichniss zu durchsuchen.
ich habe den String extension (".c,.d ,.e").
Hier mein Code:
use File::Find;
find( \&foundfile, "c:/TMP/" );
sub foundfile {
my $abortboolean= "true";
return unless -f $_; # Only Files are interesting
my @extensionarray = split(/,[' ']?/, $extension);
my $array_element;
foreach $array_element(@extensionarray)
{if (/$array_element$/i){print "FALSE\n";$abortboolean="false";}}
if ($abortboolean eq "true"){print "TRUE\n";return;}
print "Datei $_ ist ", -s $_, " Byte gross.\n";
}
Das Problem:
Er erkennt alle *.e Dateien wunderbar; LEIDER erkennt er auch *.EXE .
Was mache ich falsch ?