2015-06-03 206 views
0

我有一个测试,把它sometest,在SCons的注册,可以通过做调用:将命令行参数给SCons测试

scons sometest.test 

sometest也期待命令行参数,也就是它查找标志-beHappy,以另一种模式运行。

当我试图调用使用测试:

scons sometest.test -beHappy 

我从SCons的一些警告:

Warning: ignoring -e option 
Warning: the -W option is not yet implemented 

然后继续在不传递参数运行测试。

我试图

scons sometest.test -beHappy 
scons 'sometest.test -beHappy' 

无济于事。

回答

0

我不使用scons,但它可能值得尝试旧的双连字符, - 。许多shell使用它来禁用选项处理,将选项传递到底层脚本进行处理。

scons sometest.test -- -beHappy

从bash的手册页:

A - 标志选项的结束,禁止其余的选项处理。 > - 之后的任何参数都被视为文件名和参数。一个论点 - 相当于 - 。

退房bash的页面并搜索--以获取更多信息。如果您使用其他shell,请确保查看该shell的手册页。

希望这会有所帮助。

0

的Try ...

scons sometest.test --beHappy 

SCons的长度超过一个字符选项的前缀为两个破折号(-)。

知道Scons使用optparse是有帮助的。

当您输入-beHappy时,scons读取为等效-b -e -H -a -p -p -y