2015-10-14 103 views
1

当使用wafhttps://waf.io)构建系统时,如何在构建过程中将命令的输出打印到控制台?该命令是一个外部操作系统命令,并调用这样的:如何在waf中抑制构建命令的控制台输出?

bld(rule='cmd ${SRC} ${TGT}', source='input.txt', target='output.txt') 

除了增加外壳重定向命令,没有任何WAF选项来做到这一点?如何抑制stdout和stderr命令流?

+0

'> NUL 2>&1'或'>的/ dev/null 2>&1' –

回答

2

您可以redirectstdoutstderr在Windows(描述符12,分别地)到/dev/null在非Windows和nul这样的:

// In your wscript 
import os 

devnull = ('nul' if 'nt' in os.name '/dev/null') 

def build(bld): 
    bld(rule='cmd ${SRC} ${TGT} 1>' + devnull + ' 2>&1', source='input.txt', target='output.txt')