Thread Auslesen von einer Datei - Perl (26 answers)
Opened by JEns at 2011-07-19 10:25

renee
 2011-07-19 10:42
#150531 #150531
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Ich würde beim Einlesen den Wert von $/ setzen (siehe dazu auch diesen Blogpost):

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
my %status;
my $file = '/var/status.dat';
{
    local $/ = "hoststatus\n{";
    if ( open my $fh, '<', $file ) {
        while ( my $block = <$fh> ) {
            my ($hostname,$status) = $block =~ m!
                host_name: (.*?)
                \n.*?
                scheduled_downtime_depth=(\d+)
            !xms;
            $status{$hostname} = $status;
        }
    }
}

for my $host ( keys %status ) {
    print $host,"\n" if $status{$host} == 1;
}


Das print kannst Du natürlich auch innerhalb der while-Schleife machen. Ich habe hier mal alles im Hash gespeichert, für den Fall dass die Daten zu einem späteren Zeitpunkt noch benötigt werden.
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 Auslesen von einer Datei - Perl