比XX分钟前更新的文件的测试路径

时间:2015-09-29 18:29:44

标签: powershell powershell-v2.0

我有这个:

$now = get-date
Test-Path -NewerThan $now.AddMinutes(-130) 'D:\FileFolderLocation\*' |
  Out-File 'D:\OutputFolderLocation\checker.txt'

如果文件存在于130分钟前的文件夹中,则输出True或False。

适用于PowerShell 3.0+,但我在使用PowerShell 2.0的服务器上运行它。是否可以在不使用-NewerThan的情况下重新编写此代码来使用PowerShell 2.0?

1 个答案:

答案 0 :(得分:1)

不确定。只需使用Get-ChildItemWhere-Object过滤器:

$now = Get-Date
[bool](Get-ChildItem 'D:\FileFolderLocation' |
  Where-Object { $_.LastWriteTime -gt $now.AddMinutes(-130) }) |
  Out-File 'D:\OutputFolderLocation\checker.txt'

将结果转换为bool会产生$true$false,具体取决于是否找到匹配的文件。如果您需要排除目录,请将-and -not $_.PSIsContainer添加到过滤器。