Thread Dateien aus Verzeichnis einlesen und zeilenweise bearbeiten
(4 answers)
Opened by Bionerd at 2012-05-16 11:51
Hi! Das Programm soll mehrere Dateien aus einem Verzeichnis einlesen und diese dann einzeln, Zeile für Zeile bearbeiten/durchsuchen und die Zeilen, auf die der reguläre Ausdruck zutrifft, anschließend in ein .txt schreiben. Jedoch kommt immer nur, dass kein Verzeichnis bei Line 7 gefunden wird, wenn ich das Programm ausführen möchte.
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 30 31 32 33 34 my $Verzeichnis = 'Sequenzen/'; my $out_dir='Paarungen/'; opendir(DIR, $Verzeichnis) || die "$Verzeichnis: $!"; my @Dateien = readdir(DIR); foreach(@Dateien) { if($_ =~ /\.txt$/) { open(my $fh,"$_") or die $!; $line = $_; chomp ($line); if ( ($line =~ /^([A-Z]+ (\W){1} [A-Z]+)/g)) { $line =~ s/\s+//g; $line =~ s/\+//g; if ( ($line =~ /(Line1andLine2)/g)) { print $1 . "\n"; # Ausgabe in Datei my $outpath="$out_dir/h.txt"; if(open(my $fh, '>>', $outpath)) { printf $fh ("$line .\n"); } else { warn("Error open $outpath ($!)"); } close $fh; } } } } |