Möchten Sie die Ausgabe in einer Variablen erfassen? Wenn ja, verwenden Sie Backticks oder qx{}
mit entsprechender Umleitung. Zum Beispiel könnten Sie verwenden:
(Ich habe zufällig die Programme pth1, pth2 und pth3 im Verzeichnis - sie wurden OK; pth4 und höher schreiben Fehler in stderr; die Umleitung war notwendig.)
Sie sollten immer den Erfolg von Operationen wie open()
überprüfen.
Warum ist das notwendig? Weil das Schreiben auf eine Variable die Zusammenarbeit des Prozesses erfordert, der das Schreiben ausführt - und make
weiß nicht, wie man kooperiert.
Es gibt mehrere Möglichkeiten, STDOUT umzuleiten und wiederherzustellen . Einige von ihnen arbeiten auch mit STDERR. Hier sind meine zwei Favoriten:
Verwenden von select
:
Verwenden von local
:
Viel Spaß.