Thread testen ob Verzeichnis leer (33 answers)
Opened by alexus-777 at 2004-06-05 12:03

Gast Gast
 2004-06-06 21:48
#83056 #83056
[quote=Crian,06.06.2004, 18:48]Du täuscht Dich. Du hast zwei \w+, also muss die Datei mindestens zwei Zeichen lang sein. Außerdem fällt auch die Datei '.ichgeheleiderverloren' durch.

Merke: Man sollte das, was man ausdrücken möchte, so direkt wie möglich tun (nämlich "alles außer '.' und '..'") und nicht irgendwelche komplizierten Ausdrücke formulieren, die hoffentlich genau dies leisten.[/quote]
Naja den . wollteste ja schließlich auch haben ;)
und so geht's dann unter Berücksichtigung von 'Merke':
my $files = grep /^\W*\w+\.*\w*$/, readdir DIR;

Eine Möglichkeit das alles ohne Anwerfen der Regex-Maschine zu lösen ist natürlich auch:
Code: (dl )
1
2
3
4
5
6
opendir DIR, $dir or die $!;
read DIR for 0 .. 1;
my $files = scalar readdir DIR;
closedir DIR;

$files == 0 && print "Verzeichnis leer!";

View full thread testen ob Verzeichnis leer