基于小时和分钟的Powershell搜索文件?
我有一个powershell脚本,选择在特定时间内创建的文件,如下所示基于小时和分钟的Powershell搜索文件?,powershell,Powershell,我有一个powershell脚本,选择在特定时间内创建的文件,如下所示 if ($a.CreationTime -gt (get-date).date -and $a.CreationTime.Hour -ge 14 -and $a.CreationTime.Hour -le 15){...} 这将在2PM和3PM之间拾取当天的文件 现在我想将时间范围更改为1:30 PM和3:30 PM,如何处理脚本中的分钟数 非常多,但您不能使用: Get-ChildItem
if ($a.CreationTime -gt (get-date).date -and
$a.CreationTime.Hour -ge 14 -and
$a.CreationTime.Hour -le 15){...}
这将在2PM
和3PM
之间拾取当天的文件
现在我想将时间范围更改为
1:30 PM
和3:30 PM
,如何处理脚本中的分钟数 非常多,但您不能使用:
Get-ChildItem | ForEach-Object{
switch ($_.CreationTime.Hour){
#creation hour is 1, check if minutes are over 30
1 { if ($_.CreationTime.Minute -ge 30){ Write-Host $_; break} }
#since hour is 2, no other check needed
2 { Write-Host $_; break}
#creation hour is 3, check if minutes is under 30
3 { if ($_.CreationTime.Minute-le 30){ Write-Host $_; break } }
#hour isn't 1,2 or 3 so do nothing
default {break}
}
}
将
$a.CreationTime.TimeOfDay.TotalHours检查为十进制(13.5,15.5)
选中$a.CreationTime.TimeOfDay.TotalHours
作为十进制(13.5,15.5)这是一个。请转到答案,我会接受这一个。这是我代码中的错误,我已将其更正为分钟而不是小时。小时为24小时格式,因此开关1=>13,2=>14,3=>15
if ($a.CreationTime -gt (Get-Date).Date -and
$a.CreationTime.TimeOfDay.TotalHours -ge 13.5 -and
$a.CreationTime.TimeOfDay.TotalHours -le 15.5){...}