我有一个测试,称之为sometest
,在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 :(得分:0)
我不使用scons,但是可能值得尝试旧的双连字符, - 。许多shell使用它来禁用选项处理,将选项传递给要处理的底层脚本。
scons sometest.test -- -beHappy
来自bash的手册页:
A - 表示选项结束并禁用进一步的选项处理。 > - 之后的任何参数都被视为文件名和参数。 - 的参数相当于 - 。
查看bash的 man 页面并搜索--
以获取更多信息。如果您使用另一个shell,请务必查看该shell的手册页。
希望这有帮助。
答案 1 :(得分:0)
...试
scons sometest.test --beHappy
长度超过一个字符的SCons选项前缀有两个短划线(-
)。
知道Scons使用optparse是很有帮助的。
当您输入-beHappy
时,scons将其视为等效的-b -e -H -a -p -p -y