Alle dateien mit Endung .dat in ein array einlesen.


slimmey

Grünschnabel
Hallo Leute,

versuche vergeblich alle Dateien in einem Ordner mit der Endung .dat mit Perl einzulesen. Bis jetzt bin ich soweit:

Code:
$Verzeichnis = './';
opendir(DIR, $Verzeichnis) || die "Kann Verzeichnis nicht oeffnen $Verzeichnis:";
@VerzeichnisInhalt = readdir(DIR);
closedir(DIR);
Wie "filtere" ich jetzt das ganze, sodass ich nur noch die Dateien der Endung .dat in dem array habe?

Viele Dank fürs Helfen.

Mfg slimmey
 
Zuletzt bearbeitet:

renee

Erfahrenes Mitglied
Code:
$Verzeichnis = './';
opendir(DIR, $Verzeichnis) || die "Kann Verzeichnis nicht oeffnen $Verzeichnis:";
@VerzeichnisInhalt = grep{ $_ =~ /\.dat$/ }readdir(DIR);
closedir(DIR);
 

slimmey

Grünschnabel
Vielen Dank, funktioniert prima!

Kannst du mir auch noch sagen wie ich z.B. aus so so einem array:

1_1.dat
1_2.dat
1_3.dat
2_1.dat
2_2.dat
3_1.dat

alle dateien mit der gleichen id vor dem Unterstrich in ein Verzeichnis verschiebe?
also:
1_1.dat 1_2.dat 1_3.dat -> in Ordner 1
2_1.dat 2_2.dat -> in Ordner 2
3_1.da -> in Ordner 3
usw..

Das wäre super.
Vielen Dank schonmal!!

MFG
 

Neue Beiträge