Thread readdir sort und überhaupt Probleme (6 answers)
Opened by Alexander at 2012-02-21 17:13

hlubenow
 2012-02-24 22:21
#156417 #156417
User since
2009-02-22
875 Artikel
BenutzerIn
[default_avatar]
Am besten geht das wohl mit dem Modul "File::Find", das offenbar zum Perl-Kern gehört (siehe "perldoc File::Find").

Wenn Du so etwas selbst implementieren willst, mußt Du Rekursion verwenden. Ein Beispiel:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/perl

use warnings;
use strict;

use Cwd;

sub myfind {

    my $wd = shift;
    my @a = <*>;
    my @dirs = ();

    my $i;
    foreach $i (@a) {
        $i = "$wd/$i";
        if (-d $i) {
            push(@dirs, $i);
        }
    }

    my $adir;
    foreach $adir (@dirs) {
        print "$adir\n";
        myfind($adir);
    }
}

myfind(getcwd());

Wie Du siehst, ruft die Funktion "myfind()" sich selbst auf. So kommt man an eine unbekannte Anzahl von Unterverzeichnissen, was sonst schwierig wäre.

HTH
Last edited: 2012-02-24 22:23:21 +0100 (CET)

View full thread readdir sort und überhaupt Probleme