#!/usr/bin/perl use strict; use warnings; my $Dir='C:/perlprogs/SP_AUF/SALES_0000'; my $OutFile='C:/perlprogs/SP_AUF/fileliste.txt'; my @FileListe; # "open" mit Fehlermeldung wenn es nicht klappt. opendir(my $DirHandle, $Dir) or die "Konnte Ordner '$Dir' nicht öffnen ($!)\n"; while(my $Filename = readdir($DirHandle)) { # "." und ".." überspringen next if($Filename eq '.' or $Filename eq '..'); # Ist es ein Verzeichnis? if(-d $Dir.'/'.$Filename) { my $SubDir=$Dir.'/'.$Filename; opendir(my $SubDirHandle, $SubDir) or die " Konnte Ordner '$SubDir' nicht öffnen ($!)\n"; while(my $SubFilename = readdir($SubDirHandle)) { # ist es keine Datei? next if(!-f $SubDir.'/'.$SubFilename); push(@FileListe, $Filename.'/'.$SubFilename); } closedir($SubDirHandle); } # ist es eine Datei? elsif(-f $Dir.'/'.$Filename) { push(@FileListe, $Filename); } } closedir($DirHandle); open(my $FileHandle,'>',$OutFile) or die "Konnte '$OutFile' nicht Öffnen ($!)\n"; print $FileHandle join("\n",@FileListe); close($FileHandle);