2017-10-07 52 views
0

我正在使用PowerShell腳本來搜索計算機中的某個字符串,並將結果放入數組中。完成後,它將數組的結果打印到日誌文件中。我遇到的問題是命名文件。我希望名稱爲「AAV- 日期.log」。其中日期是此格式的當前日期和時間:YmdHMS。爲什麼Get-Date throws Index超出了數組錯誤的範圍?

獲取日期的方式是使用Get-Date -UFormat $Y$m$d$H$M$S並存儲在變量中,看起來像$Date = Get-Date -UFormat $Y$m$d$H$M$S,然後在創建日誌文件時調用$Date。問題是,當它運行時,它會拋出一個錯誤,指出「索引超出了數組的範圍」。我已經嘗試了Get-Date行本身,仍然得到錯誤。這是在其豐滿的錯誤消息:

Get-Date : Index was outside the bounds of the array. 
At C:\Users\*******\Documents\*******\*********\*****\scanner.ps1:4 char:9 
+ $Date = Get-Date -UFormat $Y$m$d$H$M$S 
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : NotSpecified: (:) [Get-Date], IndexOutOfRangeExceptio 
    n 
    + FullyQualifiedErrorId : System.IndexOutOfRangeException,Microsoft.PowerShell. 
    Commands.GetDateCommand 

我曾嘗試谷歌,荷蘭國際集團,但什麼也沒有涉及到獲取最新在PowerShell中。任何想法爲什麼它拋出這個錯誤,我做錯了什麼以及如何解決它?提前致謝!

回答

0

-Uformat正在尋找具有百分號前面的字符。而不是美元的跡象,其表示在PowerShell中

變量名
Get-Date -UFormat "%Y%m%d%H%M%S" 

你是發送一個空字符串,因爲這些變量沒有聲明。如果您在docs.microsoft.com

跑這也

Get-Date -UFormat "" 

有更詳細的你會得到同樣的錯誤

相關問題