可能的重复:
获取通过管道传输到另一个进程的退出代码
我正在使用以下命令行(在 makefile 中)通过 perl 脚本将来自编译器的详细错误消息通过管道传输,该脚本将它们简化为人类可读的内容:
g++ -c source.cpp -o source.o 2>&1 | perl /bin/gSTLFilt.pl
Run Code Online (Sandbox Code Playgroud)
不幸的是,这种方法“屏蔽”了g++命令返回的错误值。make 不知道该g++命令已失败,因为它返回的只是perl命令的错误结果。
有没有办法通过管道输出,并仍然保留原始错误条件?
如果它有所不同:我在运行 GNU bash 版本 2.04.0(1)-release (i686-pc- msys) 在 Windows XP 上。