Używam różnych testów Java i chcę zarchiwizować wyniki. I wykonanie (DACAPO) benchmark tak:Windows Batch Script: Przekieruj WSZYSTKIE dane wyjściowe do pliku
C:\VM\jre\bin\java -jar C:\benchmarks\dacapo-9.12-bach.jar %arg1% > %time::=%
mijam rodzaj odniesienia w ciągu parametr, to jest to co jest% arg1%.
Widać, że przekierowuję dane wyjściowe do pliku tekstowego. Niestety, pierwsza i ostatnia linia wyjścia jest nadal drukowane w konsoli a nie do pliku tekstowego:
===== DaCapo 9.12 luindex starting =====
===== DaCapo 9.12 luindex PASSED in 2000 msec =====
Zwłaszcza ostatnia linia będzie ważne, aby mieć w pliku tekstowym :)
Czy istnieje sztuczka, aby zmusić to zachowanie?
Czego 2> & 1 w ogóle znaczy? Powiedzieć, że jest to nieintuicyjna składnia, byłaby komplementem najwyższej klasy. – vargonian
STDIN jest deskryptorem pliku # 0. STDOUT jest deskryptorem pliku # 1. STDERR jest deskryptorem pliku # 2. Podobnie jak "plik polecenia" przekierowuje STDOUT do pliku, możesz również przekierować dowolne deskryptory plików do siebie nawzajem. Operator "> &" przekierowuje między deskryptorami plików. Zatem "2> i 1" przekierowuje wszystkie STDERR na wyjście STDOUT. –
Dziękuję bardzo, Zach, to demistifies to! – vargonian