Thread System-Ausgabe in Datei umleiten - inkl. ReturnCode-Steuerung (23 answers)
Opened by Duhmok at 2012-02-20 15:54

murphy
 2012-02-20 16:34
#156238 #156238
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Wenn Du ohnehin ein Shellkommando absetzt, kannst Du einfach die Ausgabeumleitungsfunktionen der Shell verwenden.

Beim Zusammenbauen eines Shellbefehles muss man aber immer aufpassen, dass man das Escaping der Argumente richtig hinbekommt und das ist leider recht hässlich und systemspezifisch.

Eventuell ist es also sauberer und einfacher mit open und close zu arbeiten und die Argumente automatisch korrekt an den externen Prozess übergeben zu lassen:
Code (perl): (dl )
1
2
3
4
5
6
7
8
open(my $pipe, '-|', $impKorr, -cfgfile => $cfgfile, -dbuser => $USER, -dbpassword => $PWD) or do {
  die "failed to spawn process: $!";
};
my @output = <$pipe>; # oder was auch immer man mit der Programmausgabe anfangen will
my $rc = close($pipe) or do {
  die "failed to close process: $!" if ($!);
  $?;
};
When C++ is your hammer, every problem looks like your thumb.

View full thread System-Ausgabe in Datei umleiten - inkl. ReturnCode-Steuerung