我正在运行各种Java基准,并希望归档结果。 我执行这个(dacaco)基准testing:
C:\VM\jre\bin\java -jar C:\benchmarks\dacapo-9.12-bach.jar %arg1% > %time::=%
我通过一个参数来传递基准types,这就是%arg1%。
你可以看到我将输出redirect到一个文本文件。 不幸的是,输出的第一行和最后一行仍然在控制台中打印,而不是在文本文件中:
===== DaCapo 9.12 luindex starting ===== ===== DaCapo 9.12 luindex PASSED in 2000 msec =====
特别是最后一行在文本文件中将是重要的:)
有没有强制这种行为的伎俩?
您必须重定向STDOUT和STDERR。
command > logfile 2>&1
将2>&1添加到您的命令中:
C:\VM\jre\bin\java -jar C:\benchmarks\dacapo-9.12-bach.jar %arg1% 2>&1 > %time::=%
这会将STDERR重定向到STDOUT,然后将其重定向到您的文本文件中。