我仍在學習 Powershell,為了完成作業,我需要將 CSV 檔案中的書面資料轉換為 powershell 接受的日期時間格式。
CSV 格式的日期寫為:1-1-2014。
為了轉換它們,我發現(通過一些蠻力)我可以使用以下代碼:
$Files = gci $Source\*.csv
$Data = Import-CSV $Files -Delimiter ";"
$Data | ForEach-Object { $_.Time = $_.Time -as [datetime]
$_
}
但是,在我看來,這在撰寫如下時也應該有效:
$Data | ForEach-Object { $_.Time = $_.Time -as [datetime] $_ }
當我這樣運行它時,它會回傳一堆錯誤。
$_之后我也只是添加了因為一個同事在他的函式中使用了它[datetime],我真的不明白為什么它必須放在那里,為什么它需要放在一個新的行上。誰能解釋一下?如果有不同/更好的方法將 CSV 資料轉換為日期時間格式,我也有興趣聽到這些,在此先感謝!
uj5u.com熱心網友回復:
第一個(多行)版本有效,因為 PowerShell 將完整陳述句后的換行符解釋為終止符- 它知道這$_是與$_.Time = $_.Time -as [datetime].
要將多個單獨的陳述句放在一行上,您必須使用分號;將它們分隔:
$Data | ForEach-Object { $_.Time = $_.Time -as [datetime]; $_ }
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/437596.html
標籤:电源外壳
