PowerShell 日期比较
PowerShell 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了。
目标:从 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了。