我廣泛閱讀,我可以在一個參數通過傳遞給我的PowerShell腳本:傳遞日期時間作爲參數
param (
[Datetime]$argument
)
我也看到了,我可以定義一個默認值:
param (
[Datetime]$argument = Get-Date "5/1/2006 7:00 AM"
)
但是在這樣做,我得到:
At C:\Users\medmondson\Desktop\Scripts\ScrumTimer.ps1:2 char:26 + [Datetime]$argument = Get-Date "5/1/2006 7:00 AM" + ~ Missing expression after '='. At C:\Users\medmondson\Desktop\Scripts\ScrumTimer.ps1:2 char:24 + [Datetime]$argument = Get-Date "5/1/2006 7:00 AM" + ~ Missing ')' in function parameter list. At C:\Users\medmondson\Desktop\Scripts\ScrumTimer.ps1:3 char:1 +) + ~ Unexpected token ')' in expression or statement. + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId : MissingExpressionAfterToken
這似乎只發生爲DateTime
,在那裏我g允許任何想法錯了嗎?
你的傳奇 - 謝謝。我想這是有道理的,它說有一個缺少的表達。有什麼理由要我們這樣做嗎? – 2013-04-30 10:41:19
原因在於powershell引擎如何解析腳本:'()'強制解析器在將它分配給變量之前解析'get-date'值。 – 2013-04-30 10:45:18
非常感謝 – 2013-04-30 10:46:47