# C:\Perl\bin\perl.exe use strict; use warnings; my $quelle = 'C:\Dokumente und Einstellungen\stephan\Desktop\output'; my $ziel = 'C:\Dokumente und Einstellungen\stephan\Desktop\output_verarbeitet'; my $datei_zum_schreiben = 'verarbeitet.txt'; my @quelle_files; my @ziel_files; my $dhandlequelle; ################################################################################################# # Verschieben der vielen kleinen Textdateien # ################################################################################################# (opendir($dhandlequelle, $quelle)) or (die "Quellverzeichnis konnte nicht geoeffnet werden: $!\n"); @quelle_files = readdir($dhandlequelle); foreach my $temp_quelle_files(@quelle_files) { next if -d $temp_quelle_files; unless($temp_quelle_files=~ m/\.pl$/i) { print "$temp_quelle_files\n"; rename ($temp_quelle_files, "$ziel"."\\"."$temp_quelle_files"); } #unless } #foreach closedir($dhandlequelle); (opendir(my $dhandleziel, $ziel)) or (die "Zielverzeichnis konnte nicht geoeffnet werden: $!\n"); (open(my $fhandle_gesamtdatei, "> $ziel"."\\"."$datei_zum_schreiben")) or (die "Datei '$ziel\\$datei_zum_schreiben' konnte nicht geoeffnet werden: $!\n"); (@ziel_files=readdir($dhandleziel)) or (die "Zielverzeichnis konnte nicht gelesen werden"); foreach my $temp_ziel_files(@ziel_files) { next if -d $temp_ziel_files; unless($temp_ziel_files=~ m/^verarbeitet.txt$/i) { (open(my $fhandle_einzeldateien, "$ziel"."\\"."$temp_ziel_files")) or (die "Die Datei '$temp_ziel_files' konnte nicht geoeffnet werden: $!\n"); foreach my $textzeile ($fhandle_einzeldateien) { chomp($textzeile); print($fhandle_gesamtdatei "$textzeile\n"); } #foreach zeile in kleinen Dateien } #wenn die txt nicht verarbeitet.txt heist }#foreach closedir($dhandleziel);