1
2
3
4
5
6
7
8
9
10
11
12
use strict;
use warnings;
my $path='nur/ein/test/';
print "Endung angeben: ";
my $endung=<STDIN>;
chomp($endung);
my @list=glob("$path*$endung");
map{ print "$_\n" }@list;
Für eine bessere Differenzierung eignet sich das Modul
File::MMagic Das ermittelt den Dateityp nicht nur anhand der Endung, sondern schaut auch in die Datei.
das müsstest du ungefähr so machen:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use strict;
use warnings;
use File::MMagic;
my $mm = File::MMagic->new();
my $path='nur/ein/test/';
print "Type angeben: ";
my $type=<STDIN>;
chomp($type);
my @list=glob("$path*");
@list=grep{$mm->checktype_filename($_) =~ /\Q$type\E/}@list;
map{ print "$_\n" }@list;
Typen wären so was wie "text", "image", "binary", oder auch "png", "jpeg", etc.