我正在使用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
答案 0 :(得分:0)
使用带引号参数的子shell来包装重定向,以便timeout
看不到它们:
timeout --preserve-status 1 sh -c 'exec myscript < inp.txt > out.txt 2> Error.log'