- 不工作| 电源外壳

gka*_*nu7 3 powershell

我有一个Powershell脚本,它根据我的要求读取CSV文件并过滤掉数据,但问题是它只能在我的Windows 8.1系统上运行,而不是其他地方.该 -gt运营商要精确,脚本在其他系统上运行,如果我改变了-gtlt,le等等.

下面是脚本.

$date1 = Date ("{0:MM/dd/yyyy}" -f (get-date).AddDays(-1)) -format G

echo $date1

Import-Csv C:\avaya\2014.04.csv | Where-Object { $_.Party1Name -eq "User_Name" -and $_.'Call Start' -gt ( $date1 ) } | Export-Csv -Path "result.csv" -NoTypeInformation
Run Code Online (Sandbox Code Playgroud)

Fro*_* F. 7

-gt正在按预期工作.问题是你正在尝试比较字符串值-gt.要比较日期,他们需要是DateTime对象.导入CSV文件时,所有值都将作为字符串导入.您需要将日期转换回对象DateTime.例如:

$date1=(get-date).AddDays(-1)

echo $date1

Import-Csv C:\avaya\2014.04.csv | Where-Object { $_.Party1Name -eq "User_Name" -and ($_.'Call Start' -as [datetime]) -gt $date1 } | Export-Csv -Path "result.csv" -NoTypeInformation
Run Code Online (Sandbox Code Playgroud)