Thread Einlesen mehrerer Dateien (38 answers)
Opened by Alex at 2013-04-23 11:08

Linuxer
 2013-04-30 17:23
#167370 #167370
User since
2006-01-27
3870 Artikel
HausmeisterIn

user image
Ja, der Code

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# this routine is to be changed to do the job of data extraction and combination
# ADJUST THIS CODE if test run was successful
sub combine_to {

    my $newfile   = shift;
    my $directory = shift;
    my $filesRef  = shift;

    # DEBUG output
    warn <<DEBUGTEXT;
DATADIR: '$directory'
OUTPUTFILE: '$newfile'
DATAFILES: @{$filesRef}

DEBUGTEXT

}


muss später angepasst werden, um die Daten wie gewünscht zu verarbeiten.

Aber das ist doch schon wieder vorgegriffen. Dein Problem besteht doch mindestens aus 2 Schritten:


Schritt 1: suche und finde Dateien
Schritt 2: verarbeite die gefundenen Dateien

Bleib doch erstmal beim Schritt 1 und grübel (noch) nicht über Schritt 2 nach.
Oder bekommst Du mittlerweile Ausgaben über gefundene Dateien?

Meiner Meinung nach ist es relativ sinnfrei, sich Gedanken um Schritt 2 zu machen, solange Schritt 1 kein brauchbares/gewünschtes Ergebnis liefert.

Ich kann es derzeit weder nachvollziehen noch verstehen, warum bei absoluter Pfadangabe eine Fehlermeldung kommt, dass das Verzeichnis nicht gefunden würde und bei relativer Pfadangabe keine Meldung, aber auch kein Ergebnis... Da stimmen irgendwelche Angaben nicht...

Ich habe jetzt mal zum Testen folgende Struktur angelegt:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
/home/linuxer/testing/bioperl
├── Bakterien
│   ├── emil
│   │   └── emil.ffn
│   ├── fritz_anna
│   │   ├── anna.ffn
│   │   └── fritz.ffn
│   └── hans
│   └── hans.ffn
└── recombine.pl

4 directories, 5 files


"recombine.pl" ist dabei mein Testskript.
Wenn ich das jetzt ausführe (Pfadangabe im Skript: /home/linuxer/testing/bioperl ) bekomme ich die folgende Ausgabe:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
DATADIR: '/home/linuxer/testing/bioperl/Bakterien/emil'
OUTPUTFILE: 'combined.ffn'
DATAFILES: emil.ffn

DATADIR: '/home/linuxer/testing/bioperl/Bakterien/hans'
OUTPUTFILE: 'combined.ffn'
DATAFILES: hans.ffn

DATADIR: '/home/linuxer/testing/bioperl/Bakterien/fritz_anna'
OUTPUTFILE: 'combined.ffn'
DATAFILES: anna.ffn fritz.ffn


Wenn Du solch eine Ausgabe nicht hast, dann scheint mir da noch was nicht korrekt zu sein.
Ist die Dateiendung wirklich nur .ffn oder evtl. auch .FFN?
Dann ist nämlich der Code anzupassen... Unter Linux ist Groß- und Kleinschreibung wie schon erwähnt zu beachten!
Last edited: 2013-04-30 17:28:20 +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!

View full thread Einlesen mehrerer Dateien