Die beste Methode, um die Ausgabe vom Systembefehl in eine Textdatei zu schreiben?

7

Ich versuche, die Ausgabe mit Perls system -Funktion zu erfassen, um das output eines Systemkommandos auszuführen und in eine Datei umzuleiten, aber aus irgendeinem Grund bekomme ich nicht die gesamte Ausgabe.

Ich verwende die folgende Methode:

%Vor%

Was ist falsch an diesem Code oder gibt es eine alternative Möglichkeit, dasselbe zu tun?

    
int80h 17.10.2011, 20:17
quelle

6 Antworten

11

Wie MVS's Antwort , aber modern und sicher.

%Vor%

einfacher

%Vor%

wenn Sie sowohl STDOUT als auch STDERR benötigen

%Vor%     
Joel Berger 18.10.2011, 00:48
quelle
10

Umleiten der Ausgabe mit plain & gt; wird nur STDOUT fangen. Wenn Sie auch STDERR abfangen möchten, verwenden Sie 2 & gt; & amp; 1:

%Vor%

Weitere Informationen finden Sie unter Perlmonks

    
Frank Schmitt 17.10.2011 20:24
quelle
1

Wenn Sie die Ausgabe dauerhaft umleiten möchten, können Sie Folgendes tun:

%Vor%     
Znik 26.02.2014 13:11
quelle
0

Sie könnten auch versuchen, dass Perl stattdessen die Ausgabe erfasst:

%Vor%     
MVS 17.10.2011 20:26
quelle
0

Ich finde diesen Weg sehr schön:

%Vor%

Danke DWGuru für die Kommentare zu Capture :: Tiny :: Extended . : -)

    
Francisco Zarabozo 13.08.2014 21:42
quelle
-1

Das funktioniert:

In C-Code können Sie die folgende Zeile haben, um die erforderliche Ausgabe zu erfassen:

%Vor%     
Anil Kongovi 04.09.2015 10:02
quelle