Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 使用timeout命令时如何在文件中获取日志?_Linux_Bash_Shell - Fatal编程技术网

Linux 使用timeout命令时如何在文件中获取日志?

Linux 使用timeout命令时如何在文件中获取日志?,linux,bash,shell,Linux,Bash,Shell,我正在尝试将下面命令的日志抓取到一个文本文件中,如下所示: timeout 10 glxheads &> test.txt 但不幸的是,我没有通过这种方法将任何日志传输到文本文件 实际上,在超时情况下执行的任何简单命令都不会将输出发送到文件 注: 下面的命令起作用 glxheads &> test.txt 有人能提出一些解决这个问题的想法吗 谢谢 根据Dmitri指定的链接,我可以通过执行以下操作来解决此问题: stdbuf -oL -eL timeout 10

我正在尝试将下面命令的日志抓取到一个文本文件中,如下所示:

timeout 10 glxheads &> test.txt 
但不幸的是,我没有通过这种方法将任何日志传输到文本文件

实际上,在超时情况下执行的任何简单命令都不会将输出发送到文件

注: 下面的命令起作用

glxheads &> test.txt
有人能提出一些解决这个问题的想法吗


谢谢

根据Dmitri指定的链接,我可以通过执行以下操作来解决此问题:

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

unbuffer timeout 10 glxheads &> test.txt

从这个线程中查看配方(
unbuffer
stdbuf
,等等),我无法复制它。我用两个命令调用timeout:一个符合时间间隔,另一个不符合时间间隔。两者都按预期工作:第一个将所有输出写入日志,第二个只写入其输出的一部分。你确定在前10秒内打印输出吗?我做了与@Asalle相同的测试,我可以确认我无法重现问题。一切如期进行。您正在运行哪个版本的
timeout
?在哪个系统上?用哪个贝壳?尝试将其称为
\timeout
以确保您没有调用别名…同时从Mesa 8.2.0运行
glxheads
在这两种情况下都会产生输出。我使用的是
glxheads
来自
Mesa 8.3.0-1
<代码>超时版本8.25@DmitriChubarov我可以使用
unbuffer
命令修复此问题