[quote=format_c,05.05.2004, 22:10]Das nimmt man zu Code Evaluierung zur Laufzeit.[/quote]
Nein, dazu nimmt man "eval string". Hier haben wir aber ein Exemplar von "eval block". Das nimmt man dazu, Fehler wie z. B. die() oder 1/0 abzufangen. Da so etwas hier offensichtlich nicht innerhalb des Blockes entsteht, ist eval{} zwecklos.
Mit den Backticks faengst Du stdout ab, nicht stderr. Die gewuenschten Fehler kommen aber nach stderr. Mach also:
$fehler = `tar czf $filename @ok 2>&1`
Edit: Aber falls Dich nicht die Fehler
meldung sondern die Tatsache, ob es ein Fehler ist, interessiert, nimm den Vorschlag von format_c\n\n
<!--EDIT|betterworld|1083788436-->