我有这个:
$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?
答案 0 :(得分:1)
不确定。只需使用Get-ChildItem
和Where-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
添加到过滤器。