2012-05-14 21 views
5

Tengo un csv que es similar a estefundición columna desde CSV como fecha de PowerShell

"fundName","MMFcusip","ticker","AsOfDate","SumHoldingPercent" 
"BlackRock OH Muni MMP/Instit","'091927236'","COIXX","2/29/2012 12:00:00 AM","100.00000000200" 
"Western Asset Inst US Treas Res","'52470G841'","CIIXX","2/29/2012 12:00:00 AM","100.00000000200" 

uso de PowerShell, ¿cómo puedo emitir el "asOfDate" como una fecha/hora cuando se utiliza el cmdlet Import-CSV?

EDIT: esta es la línea de código que estoy trabajando con

$measuredDate = $today.AddDays(-21) 
$staleDates = Import-Csv d:\path\file.csv | Foreach-Object {$_.AsOfDate = Get-Date $_.AsOfDate} | Where-Object {asOfDate -lt $measuredDate} | Measure-Object 
+0

Por qué no echarlo cuando se va a utilizar el valor en cambio que durante la importación-csv? –

+0

Eso funcionaría bien también, aunque creo que todavía no estoy seguro de cómo lo haría. Simplemente necesito comparar esta fecha, con una almacenada en una variable para ver si es anterior a la de la variable – mhopkins321

Respuesta

5
Import-Csv file.csv | 
Where-Object { ![string]::IsNullOrWhiteSpace($_.AsOfDate) } | 
Foreach-Object { 
    $_.AsOfDate = $_.AsOfDate -as [datetime] 
    $_ 
} 
+0

, hice este cambio en la secuencia de comandos y obtuve un montón de errores debido a que algunas filas tienen nulo ("") asOfDates. ¿Alguna idea de como arreglarlo? – mhopkins321

+0

Sí, actualizaré mi respuesta en un minuto. –

+0

También edité mi publicación original para mostrar la línea exacta de código con la que estoy trabajando actualmente. ¡gracias por la ayuda! – mhopkins321

Cuestiones relacionadas