Thread Zeile in Datei finden und löschen - Funktioniert nicht (9 answers)
Opened by seraphim at 2008-06-15 17:48

seraphim
 2008-06-15 17:48
#111042 #111042
User since
2008-06-15
5 Artikel
BenutzerIn
[default_avatar]
Ich bin meines Zeichens Perl Anfänger und schreibe gerade an einem IRC Bot.

Nun will ich auf Befehl hin den Bot eine Zeile aus einer Datei löschen lassen.
Dies hab ich so gelöst:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
                        if (($line[3] eq ":remove") && (defined $line[4])) {
                                open my $handle1, '<', $srcpath or die "Cant open File: $!";
                                my @list;
                                my $search = "$line[4]";
                                print Dumper($search);
                                while (my $x = <$handle1>) {
                                        chomp $x;
                                        if ($x ne $search) {
                                                push @list, $x;
                                                print "$x";
                                        };
                                };
                                close ($handle1);
                                open my $handle2, '>', $srcpath or die "Cant open File: $!";
                                foreach my $o (@list) {
                                        print $handle2 "$o\n";
                                };
                                close($handle2);
                        };


Nun funktioniert es leider nicht, die Stelle wird nicht aus der Datei entfernt und am Ende der Datei wird immer eine Zeile mit einem Leerzeichen geschrieben.
Ich weiß der Code bzw die Idee ist nicht die optimale Lösung doch ich bin erstmal dabei das zu lernen und dann zu optimieren.

View full thread Zeile in Datei finden und löschen - Funktioniert nicht