所以在我的Powershell脚本中,我有2个变量相互相乘,但是有一个问题,Powershell无法告诉我想要将变量相互相乘。脚本如下:
$answer = $a*$equation
$a
变量为7
。
$equation
变量为365*675/54
所以我希望脚本执行的操作是7*365*675/54
并设置$answer
变量的答案。
当我调试脚本时,它表示问题出在* symbol
中。任何人都可以帮忙吗?
答案 0 :(得分:3)
我会使用Invoke-Expression
而不是运行另一个PowerShell实例。
$answer = Invoke-Expression "$a*$equation"
答案 1 :(得分:1)
听起来你想要的行为是Powershell将变量$equation
解释为数学;表达而不是价值。通常,这不是变量在powershell中的工作方式。它们代表价值,而不是表达。因此,powershell将其视为string
而非数字。
这可以通过旋转powershell的另一个实例并要求它解释字符串来完成。然后它将返回您可以存储的结果
$resolved = powershell $equation
$answer = $a * $resolved