PowerShell 日期比较

标签 powershell csv date date-comparison

目标:从 CSV 导入日期。如果日期已经过去或者是今天,则显示它。

$dayInOctober = (Get-date).AddDays(90)
$csvname = "myCSV.csv"
$csvFile = Import-Csv C:\Users\a341162\Desktop\$csvname

foreach($row in $csvFile){
    if ($row.Date -le $dayInOctober){
        Write-Host $row.Date
    }
}

但只有当我使用 if 语句 -gt 时才有效。难道不应该是我上面的方式吗?

myCSV.csv:

"Name","Date"
"admryantest2","7/20/2018"
"admryantest3","7/20/2018"
"admryantest3","7/23/2018"
"admryantest3","7/23/2018"

最佳答案

导入 CSV 时,$row.Date 是一个字符串。如果您想将日期作为日期进行比较,那么您需要将其转换为日期:

$dayInOctober = (Get-date).AddDays(90)
$csvname = "myCSV.csv"
$csvFile = Import-Csv C:\Users\a341162\Desktop\$csvname

foreach($row in $csvFile){
    if ((Get-Date $row.Date) -le $dayInOctober){
        Write-Host $row.Date
    }
}

然后您可以按预期使用 -le 。

关于PowerShell 日期比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51250489/

相关文章:

visual-studio-2008 - Visual Studio 中的 Powershell

powershell - 匿名递归函数

python - 在python中将不同长度的数组写入csv

sql-server - CSV 文件上的 SSIS Foreach 循环错误

具有 "+00"时区偏移格式的 Python strptime?

ORACLE 不保存日期时间。为什么?

powershell - 如何通过键入 vim 从 PowerShell 运行 vim?

xml - 使用 Xpath 和 GetElementbyID 访问 XML 数据

PHP 如何使用 fputcsv 函数将数组转换为 csv

grails - Grails:用等效的HTML替换符号