Powershell变量未正确写入

时间:2013-08-23 17:30:24

标签: powershell

所以在我的Powershell脚本中,我有2个变量相互相乘,但是有一个问题,Powershell无法告诉我想要将变量相互相乘。脚本如下:

$answer = $a*$equation

$a变量为7$equation变量为365*675/54 所以我希望脚本执行的操作是7*365*675/54并设置$answer变量的答案。

当我调试脚本时,它表示问题出在* symbol中。任何人都可以帮忙吗?

2 个答案:

答案 0 :(得分:3)

我会使用Invoke-Expression而不是运行另一个PowerShell实例。

$answer = Invoke-Expression "$a*$equation"

答案 1 :(得分:1)

听起来你想要的行为是Powershell将变量$equation解释为数学;表达而不是价值。通常,这不是变量在powershell中的工作方式。它们代表价值,而不是表达。因此,powershell将其视为string而非数字。

这可以通过旋转powershell的另一个实例并要求它解释字符串来完成。然后它将返回您可以存储的结果

$resolved = powershell $equation
$answer = $a * $resolved