Thread Arbeiten mit DIR
(6 answers)
Opened by dirk.m at 2018-08-07 20:51
Hi,
ich würde dieses String-Gebastel mit $body sein lassen und einfach mit den Dateinamen arbeiten. - Verzeichnis öffnen - Einträge einzeln auslesen - Nur die csv-Dateien betrachten; wenn aktuelle Datei eine csv-Datei ist, prüfe, ob die entsprechende csv.xls-Datei existiert. Wenn nicht, speichere csv-Datei-Namen in einen Array. Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 my $dir = 'C:/Users'; my @new_csv_files; opendir my $dh, $dir or die "opendir($dir) failed: $!"; chdir $dir; while ( my $filename = readdir $dh ) { if ( substr( $filename, -4, 4 ) eq '.csv' ) { if ( not -e "$filename.xls" ) { push @new_csv_files, $filename; } } } closedir $dh; # und jetzt die Dateien in @new_csv_files verarbeiten. # Beachte, dass hier nur die Dateinamen drin stehen, nicht der Verzeichnis-Pfad! PS: Groß-/Kleinschreibung muss hier genau genommen werden; der Code arbeitet nur mit .csv, nicht mit .CSV . edit: chdir $dir; ergänzt Last edited: 2018-08-13 15:15:26 +0200 (CEST) meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |