perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 34
Click for quality!




11.02.2012 / 17:08

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragSystem() ausgabe umleiten
Seitenanfang
Hallo Freunde
mein erster Beitrag hier #cheer

Ich beschäftige mich seid ungefähr 4 Tagen (in Worten 4) mit Perl und dieses Forum hat mir schon bei einiges Sachen weitergeholfen.

Ich bastel mir gra ein Perl script welches csv-Dateien einliest, daraus einen UNIX-Befehl erstellt, und diesen Befehl dann auch ausführt. soweit so gut.
sieht dann so aus:
system("/user/bin/Befehl ".$Parameter1."pwd=".$Parameter2." KonstanterParameter");

Nun zu meinem Problem:
Ich möchte nun die ausgaben die mir dieser Befehl kreiert in ein Logfile speichern. Allerdngs weiß ich nicht wie das genau funktioniert. Habe schon versucht innerhalb und außerhalb der klammer "> foo.txt" einzufügen, jeweils ohne erfolg (fehlermeldung beim compilieren) auch habe ich versucht STDOUT umzuleiten mit
close(STDOUT);
open(STDOUT, ">foo.txt);
system(...);
funktionierte allerdings auch nicht. (zwar Fehlermeldung in foo.txt, aber trotzdem noch Terminal ausgaben).

vll könnt ihr mir ja weiterhelfen.
danke Micha

Datum: 03.04.2008-13:09

Beitragre: System() ausgabe umleiten
Seitenanfang
[UPDATE]
OK bin selbst schuld. Muss natürlich die STDERR umleiten und nicht die STDOUT.

nächstes Problem. Nach dem ich system(...); ausgeführt habe möchte ich natürlich alle weiteren Fehlerausgaben wieder Standartmäßig im Terminal ausgeben. Dies mach ich dann wie?!??

Datum: 03.04.2008-13:21

Beitragre: System() ausgabe umleiten
Seitenanfang
my $res = qx{befehl 2>&1};
print $res;

Datum: 03.04.2008-18:54

-






-
-