使用超时和重定向输出运行脚本,然后对输出执行某些操作

时间:2016-09-15 08:05:32

标签: bash timeout

我正在尝试保存分析可能无法终止的脚本的输出。为了做到这一点,我将输出重定向到一个文件并运行脚本和超时后跟我的analyze命令,在这种情况下是cat。

timeout 24h php phpscript.php > script.out && cat script.out

但这似乎不起作用,输出被写入文件但从未打印过。我试过在括号中包装timeout命令,如此;

(timeout 24h php phpscript.php > script.out) && cat script.out

没有任何结果。 在我看来,这应该是微不足道的,但我的bashfu是弱的。

请帮忙

1 个答案:

答案 0 :(得分:0)

问题转变为退出代码。

超时返回124作为退出代码,而&&组合仅在第一个参数的退出代码为0时评估第二个参数

溶液:

timeout 24h php phpscript.php > script.out || cat script.out