0

因此,在我的 Powershell 脚本中,我有 2 个变量相互相乘,但是有一个问题,Powershell 无法判断我想将这些变量相乘。脚本如下:

$answer = $a*$equation

$a变量7是。$equation变量是365*675/54 所以我想要脚本做的是并将7*365*675/54答案设置为$answer变量。

当我调试脚本时,它说问题出在* symbol. 有人可以在这里帮忙吗?

4

2 回答 2

3

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

$answer = Invoke-Expression "$a*$equation"
于 2013-08-23T17:39:40.013 回答
1

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

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

$resolved = powershell $equation
$answer = $a * $resolved
于 2013-08-23T17:37:05.800 回答