我想将脚本的输出重定向到另一个程序.我通常会使用这两种形式:
python test.py 2>&1 | pyrg python test.py |& pyrg
我的问题是它不能在一个makefile里面工作:
[Makefile] test: python test.py 2>&1 | pyrg [doesn't work]
我希望避免编写一个可以完成工作的脚本文件.
编辑:
这似乎是一个pyrg问题:
python test.py 2>&1 | tee test.out // Writes to the file both stderr and stdout cat test.out | pyrg // Works fine! python test.py 2>&1 | pyrg // pyrg behaves as if it got no input
这是一个坏的解决方案,因为我没有得到猫的部分,以防测试失败(一切都在Makefile规则内)
解决方法
我偶然遇到同样的问题,对答案不满意.我有一个二进制TLBN,在测试用例example2.TLBN上失败.
这是我的make文件首先看到的.
make: ./TLBN example2.TLBN > ex2_output.txt
哪个失败,我正在期待和停止make进程的错误消息.
这是我的修复:
make: -./TLBN example2.TLBN > ex2_output.txt 2>&1
注意 – 在行的开头,告诉make忽略stderr的任何输出.
希望这有助于有类似问题的人.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。