0

私のPowershellスクリプトでは、2つの変数が互いに乗算されていますが、1つの問題があります.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 に答える