【问题标题】:Filter items that are older than a specific date过滤早于特定日期的项目
【发布时间】:2022-01-16 23:20:54
【问题描述】:

我有一个脚本的一部分,该脚本当前会为我提供特定日期之前的项目。相反,我希望它可以返回那么多天,然后再获得比该日期更早的任何东西。我应该如何修改它以达到这个结果?

If ($null -notlike $UpdatedSinceDays) {
$filterDate = ("(LastUpdatedDateTime gt {0})" -f (Get-Date (get-date).AddDays($UpdatedSinceDays) -UFormat %y-%m-%dT00:00:00z))
If ($null -eq $filterbuilder) {
$filterbuilder = $filterDate
}
Else {
Rest of filter statement 
}
}

$filterbuilder 被输入 $ParamCollection.Filter 以向命令添加多个过滤器。

【问题讨论】:

  • 根据您的需要将gt 更改为ltle
  • Get-Childtem -recurse 'C:\PS' |其中 {$_.lastwritetime -lt "1/1/2021"} |选择 LastWritetimeUTC,全名
  • @SantiagoSquarzon 您的解决方案是最容易实施和首次尝试的。谢谢!

标签: azure powershell azure-active-directory


【解决方案1】:

PowerShell 中的 Get-ChildItem cmdlet 从指定目录获取文件并使用递归参数递归地从文件夹和子文件夹中获取文件。

Where-Object cmdlet 用于过滤CreationTime 超过15 天的文件的条件。

示例脚本在 C:\temp 目录中查找所有超过 15 天的文件

# Search Path
$Folder = "C:\temp\"

# Search using gci cmdlet
Get-ChildItem -Path $folder -Recurse | Where-Object { $_.CreationTime -lt (Get-Date).AddDays(-15) }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-09
    • 1970-01-01
    • 2013-02-09
    • 2020-03-25
    • 2020-04-25
    • 1970-01-01
    • 2018-05-07
    • 2012-02-08
    相关资源
    最近更新 更多