|
logviewer.pl |
sub spawn_pipe { my $cmd = shift; my $pipe = new IO::File; my $pid; if (defined($pid = open($pipe, "-|"))) { if ($pid > 0) { return ($pipe, $pid); } else { exec($cmd) || exit 1; } } else { return undef; } } sub close_pipe { my ($pipe, $pid) = @_; kill(15, $pid); $pipe->close; } |
Das Verfolgen des Wachstums einer Datei wird tail -f
überlassen.
| |
Um Hänger am Ende zu vermeiden, muß der tail-Prozeß
vor dem Schließen der Pipeline abgeschossen werden.
Sonst würde waitpid (aufgerufen von $pipe->close)
solange hängen, bis der tail-Prozeß beendet ist.
|
Copyright © 1996, 1998, 1999, 2000 Andreas Borchert, in HTML konvertiert am 07.02.2000 |