我正在尝试对我创建的程序执行时间。当我为它添加更多数据进行处理时需要更长时间,我试图找出有关程序的详细程度和一些细节(循环次数,每个循环的时间等等),所以我创建了一个{{1我想要的状态消息。这个程序可以快速处理少量变量,但为了大量运行它,我做了:system.out.println
我看到作业运行了大约2个小时而不是它消失了,所以假设它已经完成我试着cat result.txt但它的空白。如果java崩溃了,那么错误消息也不在那里(我想我正在捕获所有输出)?如果没有,有没有我可以找到这个信息的地方?
答案 0 :(得分:2)
您将stdout重定向到文件,但是任何错误都会写入strderr,而strderr没有重定向。有关如何重定向stdout和stderr
的示例,请参阅http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-3.html答案 1 :(得分:1)
你可以做这样的事情
java my_program 1>results.txt 2>error_log.txt &
这实际上会将您的错误重定向到error_log.txt,并将您的sysout重定向到results.txt