Thread Zeilen in Datei vergleichen, doppelte löschen?! (5 answers)
Opened by yasukatakaya at 2008-04-22 10:57

renee
 2008-04-22 11:39
#108684 #108684
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du könntest für diese Aufgabe das Modul CPAN:Tie::File verwenden. Damit wird pro Element eine Zeile der Datei gespeichert. Dann kann man die doppelten löschen und das Ergebnis wird automatisch wieder in der Datei gespeichert.

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

use strict;
use warnings;
use Tie::File;

my $file = '/pfad/zur/datei';

tie my @lines, 'Tie::File', $file or die $!;
my %seen;
@lines = grep{ !$seen{$_}++ }@lines;
untie @lines;
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/

View full thread Zeilen in Datei vergleichen, doppelte löschen?!