Thread Mit while durch file loopen und aktuelle line veraendern (27 answers)
Opened by Student87 at 2012-11-13 10:40

Student87
 2012-11-13 10:40
#163264 #163264
User since
2012-11-08
73 Artikel
BenutzerIn
[default_avatar]
Hi,

mein Skript macht folgendes: Es geht mit <filename> durch ein file und verwandelt jede line ueber split in einen array(line_array). Wenn Spalte 2 (line_array[1]) in einem bestimmten Zahlenbereich liegt, soll die line (neben anderen Operationen) aus dem file geloescht werden.

Sprich: Gehe durch das file, verwandel jede Zeile in einen array und WENN line_array[1] im gewuenschten Wertebereich liegt, dann loesche die aktuelle line aus dem file.

Dazu habe ich mir ein Testskript erstellt, das Ergebnis (leere Datei) verstehe ich aber nicht:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
#!/usr/bin/perl

open (IN, '+>', "test_values");
while (<IN>) {
@line_array = split (/\t/, $_);
if ($line_array[1] == 45) {print "success"};
}

close (IN);


"test_values" sieht so aus:

4{TAB}4{TAB}4
4{TAB}45{TAB}4
4{TAB}4{TAB}4

P.S.: Im Testskript steht print success -> das soll dann spaeter print "" werden. Wenn ich im Testskript schon print "" geschrieben haette, dann waere das leere file vielleicht etwas plausibler fuer mich.
Last edited: 2012-11-13 10:44:54 +0100 (CET)

View full thread Mit while durch file loopen und aktuelle line veraendern