2009-01-27 13 views
34

Ich möchte die Fehler von einem Skript in eine Datei statt auf dem Bildschirm erfassen.Wie stderr unter Windows/DOS zu erfassen?

In * nichts wird dies mit Stderr Umleitung erfolgt, in der Regel

echo "Error" 2> errorfile.log 

Wie mache ich es in einem CMD-Skript unter Windows?

Antwort

43

Zum Beispiel:

PSKILL NOTEPAD >output.txt 2>&1 

Dies wird stdout und stderr zu einem Dateinamen output.txt lenken.

Weitere Details finden Sie unter Underused features of Windows batch files.

+7

Wenn Sie möchten, dass sie zu separaten Dateien umgeleitet werden, können Sie 'mycommand> stdout.txt 2> stderr.txt' eingeben – Kip

20

Das sollte in Win32 auch funktionieren.

Wenn Sie stdout bereits umgeleitet haben und stderr in die gleiche Datei umleiten möchten, müssen Sie das spezielle Formular 2> & verwenden, anstatt einfach dieselbe Datei zweimal anzugeben. Andernfalls erhalten Sie den Fehler "Datei beschäftigt".

+0

Dies wird auch in * [Redirect stdout und stderr in eine einzelne Datei] (http://stackoverflow.com/questions/1420965) * behandelt. –

Verwandte Themen