Pluto: die Funktion

Beitrag lesen

Hallo,

ich habe folgenden system call:
system("$CMD >/dev/null") == 0 or die "$CMD failed: $?";
wobei es mit einem "normalen" open diesselbe Frage ist:
open (CMD, "$CMD |") or die "Can't run program: $!\n";

Wie kann ich den output von die eine Funktion umleiten?
Ich hab eine subroutine für meine Ausgaben.

sub LOGG  
{  
        print LOG "$logtime\t@_\n";  
}

Und nun würde ich gerne sowas wie...
open (CMD, "$CMD |") or die LOGG("Can't run program: $!\");
... was aber nicht funktioniert.

Jemand eine Idee, wie man das am besten löst?

Danke,
Pluto