2011-08-30 59 views
0

我写了powershell ps1代码,它具有($args[0] * -1)即具有负值乘法的变量。当代码在powershell : .\myscript.ps1中运行时,代码会轻而易举地通过。Powershell和CMD提示:负值乘法问题

在脚本的调度过程中,它不起作用,所以当我在运行CMD提示符下使用Powershell.exe -ExecutionPolicy ByPass "c:\myscript.ps1" 101 3运行时,它抛出了错误($args[0] * -1) [negative mulitplication]并在cmd提示符下手动运行它,同样的问题。

所以在那个时候,我对代码接受负值作为属性进行了一些调整,而不是在代码中将其乘以-1并使其运行。

如果将来如何编写负值乘法的ps1代码,并且也在CMD提示符下运行?

+2

我无法复制错误。对于我在控制台中工作并从CMD调用。 –

+0

第二个基督徒,什么是确切的错误?将其粘贴到您的问题中。 – manojlds

+1

我最好的猜测是,问题是$ args是字符串而不是数字。 – JasonMArcher

回答

0

问题不在于负值输入或命令行,但问题在于数据类型;正如JasonMArcher指出的那样。简单的类型演员完成了所有的伎俩。