Thread Zwei Dateien auslesen (8 answers)
Opened by azib at 2015-10-29 16:17

azib
 2015-11-02 16:15
#182757 #182757
User since
2015-10-28
5 Artikel
BenutzerIn
[default_avatar]
Lieber hlubenow,

vielen Dank erst einmal für die Anmerkungen hinsichtlich des Formatierungsstils - bin dankbar für diese Hinweise! Ich hoffe in dem nachfolgenden Skript habe ich die Dinge, die Du angemerkt hast auch richtig umgesetzt.

Ich habe noch einmal versucht, das Problem mit "for" zu lösen (die Dateien mit STDIN einzulesen), das hat aber auch nicht wirklich Abhilfe geschaffen:

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
use warnings;
use strict;

my $file1;
my $file2;
my $in1;
my $in2;
my $datei1;
my $datei2;
my @out1;
my @out2;

print 'Enter ID Sample 1: ';
        $file1 = <STDIN>;       
        chomp($file1);
print 'Enter ID Sample 2: ';
        $file2 = <STDIN>;
        chomp($file2);

for ($file1){
        open ($in1, "<", $file1) or die "Datei $file1 konnte konnte wnicht gefunden werde!";
        while (<$in1>) {
        chomp($_);   
        my @a  = split(/\t/, $_);
        push (@out1, "$a[1]\t$a[12]\n");
        }       
        close ($in1);


        open($datei1, ">", "out1.txt");
        foreach (@out1) {
        print $datei1 $_;
        }

        close($datei1); 
 }
 
for ($file2){
        open ($in2, "<", $file2) or die "Datei $file2 konnte konnte wnicht gefunden werde!";
        while (<$in2>) {
        chomp($_);   
        my @b  = split(/\t/, $_);
        push (@out2, "$a[1]\t$a[12]\n");
        }       
        close ($in2);

        open ($datei2, ">", "out2.txt");
        foreach (@out2) {
        print $datei2 $_;
        }

        close($datei1); 
 }

Die erste Datei Out1.txt enthält genau das, was ich haben will, die zweite Datei Out2.txt enthält aber leider nur den letzten Eintrag der ersten Datei (x-mal). 
Woran liegt das denn? Wo liegt der Fehler?

View full thread Zwei Dateien auslesen