CreationTime重新调整了更多日期然后预期

时间:2015-01-30 12:33:55

标签: powershell

我写了这个脚本,向我展示了前一天晚上备份的所有SQL BAK作业。然而,我不仅得到了昨晚的备份,而且还获得了之前的夜晚。

$bak_path = "\\nas2\sqlbackups"

get-childitem -path $bak_path -Filter "*.bak" 
    -Exclude *master*.**,*model*.**,*msdb*.** -File -recurse  | 
    sort-object -Property CreationTime | select-object -last 200

有人会看一看并告诉我我做错了吗?

1 个答案:

答案 0 :(得分:0)

您只是按创建时间排序,而不是按照它进行过滤。

以下内容将为您提供前一天及之后创建的所有文件:

$yesterday = (Get-Date -hour 0 -Minute 0 -Second 0).AddDays(-1)
get-childitem -path $bak_path -Filter "*.bak" 
-Exclude *master*.**,*model*.**,*msdb*.** -File -recurse | where {$_.CreationTime -gt $yesterday)

如果您需要所有文件,例如从将-hour设置为13的前一天下午1点开始,您就可以开始使用了。