Thread Kontinuierlich Net-Stream anzeigen
(29 answers)
Opened by kami at 2011-11-09 13:05
Hallo
ich habe hier einen MAX! Cube stehen, der hat auf dem Port 80 kontinuierlich einen neuen Datensatz vorliegen. Ich möchte nun immer wieder diesen Auslesen und Arbeiten. Dafür habe ich auch schon einen PHP-Quellcode. Dieser erledigt bei einmaligen Aufruf die richtige Umsetzung und Ausgabe. Das Resultat des Test ist eine "0" oder "1". Code: (dl
)
1 #!/usr/bin/php -q Nun möchte ich das kontinuierlich durch PERL in der Console erledigen lassen. Hier habe ich aber auch schon das erste Problem. Ich kriege trotz while-Schleife nur einmal den Datensatz angezeigt. Wie kann ich die Ausgabe immer wieder bekommen? Hat vielleicht jemand lust mir das PHP-Skript in ein PERL-Skript umzuschreiben? Vielen dank für Hilfe. Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 #!/usr/bin/perl -w use strict; use IO::Socket; $| = 1; my ($host, $port, $kidpid, $handle, $line); unless (@ARGV == 2) { die "usage: $0 host port" } ($host, $port) = @ARGV; # create a tcp connection to the specified host and port $handle = IO::Socket::INET->new(Proto => "tcp", PeerAddr => $host, PeerPort => $port) or die "can't connect to port $port on $host: $!"; while () { #$handle->autoflush(1); # so output gets there right away # print STDERR "[Connected to $host:$port]\n"; # the if{} block runs only in the parent process # copy the socket to standard output $line = <$handle> ; print STDOUT $line; } Gruß kami modedit Editiert von GwenDragon: Langes PHP-Listing im More-Tags Last edited: 2011-12-01 18:35:32 +0100 (CET) |