1

PowerShellスクリプト内で実行している.exeに$nextdayと$currrentyearを渡します。議論が通らないようです、なぜですか?

$nextday = (Get-Date).AddDays(-1).ToString("M/dd/yyyy")
$currentgetyear = (Get-Date).ToString("yyyy")

& "C:\tmt.exe" YEAR=  $currentgetyear DATE=  $nextday
4

2 に答える 2

4

なぜ単語の間にスペースを使うのですか?ソフトウェアによってどのように解析されるかを確認してください。

[21:50:46] > & echoargs YEAR=  $currentgetyear DATE=  $nextday
Arg 0 is <YEAR=>
Arg 1 is <2013>
Arg 2 is <DATE=>
Arg 3 is <2.26.2013>

ただし、これは私が推測する方法で解析されます。

[21:50:58] > & echoargs YEAR=$currentgetyear DATE=$nextday
Arg 0 is <YEAR=2013>
Arg 1 is <DATE=2.26.2013>

だから私の解決策:次のようにスペースを削除します:

& "C:\tmt.exe" YEAR=$currentgetyear DATE=$nextday
于 2013-02-27T20:53:41.583 に答える
0

試す

& "C:\tmt.exe" ("YEAR={0}" -f (get-date).Year) ("DATE={0:M/dd/yyyy}" -f (get-date).AddDays(-1))

明細書

于 2013-02-27T20:54:15.707 に答える