如何仅查看最近24小时内创建的文件

时间:2019-09-12 23:25:46

标签: windows powershell powershell-2.0

我有以下代码。它正在工作,但是问题是,例如,如果现在是8:20 PM,则代码将看到前一天8:20 PM之后的所有文件。我需要前一天的12 AM。

Get-ChildItem -Exclude *.log |
    Sort CreationTime -Descending |
    Where-Object { $_.CreationTime -gt (Get-Date).AddDays(-1) } |
    Select-Object -ExpandProperty Name

我该如何解决?

2 个答案:

答案 0 :(得分:2)

(Get-Date).AddDays(-1)
Thursday, 12 September 2019 8:20:00 PM

((Get-Date).AddDays(-1)).Date
Thursday, 12 September 2019 12:00:00 AM

获取Date对象的DateTime属性会将时间设置为午夜。如果您正午,则可以随时((Get-Date).AddDays(-1)).Date.AddHours(12)

来添加12小时

做起来很乱,但是行得通。

答案 1 :(得分:0)

我会这样设计。编辑:问题更改后,从中午12点更改为中午12点。

[datetime]'12:00am' - [timespan]'1'  

Wednesday, September 11, 2019 12:00:00 AM

所以:

get-childitem | where creationtime -gt ([datetime]'12:00am' - [timespan]'1')