2017-01-24 38 views
0

我想我下面的命令日志抢到一个文本文件象下面这样:如何使用timeout命令在文件中获取日志?

timeout 10 glxheads &> test.txt 

但不幸的是,我不是没有得到通过这种方式转移到文本文件中的任何记录。

Infact在超时时间内完成的任何简单命令都不会将输出发送到文件。

注: 下面的命令作品,

glxheads &> test.txt 

任何人都可以提出任何想法来解决这个问题?

谢谢!

+1

退房的配方从这个线程的http:// unix.stackexchange.com/q/25372/17649('unbuffer','stdbuf'等) –

+0

我无法复制它。我用两条命令调用timeout:一条适合时间间隔,另一条不适用。两者都按预期工作:首先将所有输出写入日志,然后第二次写入其输出的一部分。你确定打印输出在前10秒? – Asalle

+0

我做了与@Asalle相同的测试,我可以确认我无法重现该问题。所有按预期工作。你正在运行哪个版本的“超时”?在哪个系统上?用哪个shell?尝试将其称为'\ timeout'以确保您不会调用别名... – Dario

回答

0

按照由德米特里指定的链接,我可以这样做来解决这个问题如下:

stdbuf -oL -eL timeout 10 glxheads &> test.txt 

或使用

unbuffer timeout 10 glxheads &> test.txt 
相关问题