给出命令内部超时的错误



我正在使用 gnome 上的超时函数等待 1 秒,我的脚本从 inp.txt 读取输入。我需要将脚本的输出写入 out.txt所以我像这样
编码

timeout 1 myscript < inp.txt > out.txt

我遇到的问题是,如果myscript失败(分段错误等(,它会将错误打印到屏幕上。
我想将这些消息保存在类似 Error.log 中,但我不知道该怎么做。
我试过了

timeout 1 myscript < inp.txt > out.txt 2> Error.log

但它给了我这个而不是myscript的错误。

timeout: the monitored command dumped core

使用带有引号参数的子外壳来包装重定向,这样timeout就不会看到它们:

timeout --preserve-status 1  sh -c 'exec myscript < inp.txt > out.txt 2> Error.log'

最新更新