此代码似乎仅适用于新版本的'文件已创建。它似乎不接受复制到文件夹中的文件,这是我需要的。我们有一个处理.csv文件的应用程序,并将它们放入一个文件夹,我希望每天通过计划任务进行监控。我可以尝试在此代码中进行任何更改吗?
Param (
[string]$Path = "C:\Users\MG\Desktop\ScanFolder"
)
$File = Get-ChildItem $Path | Where { $_.LastWriteTime -ge (Get-Date).AddHours(-1) }
If ( $File ) {
Write-Output "Error File Found"
}
else { Write-Output "Nothing Found" }
答案 0 :(得分:2)
测试.CreationTime
/ .CreationTimeUtc
的值:
对于新创建的文件,它将反映创建时间。
对于新复制的文件,它将反映文件被复制到文件夹的时间(即使它比文件的.LastWriteTime
值更新)。< / p>
应用于您的代码:
Param (
[string] $Path = "C:\Users\MG\Desktop\ScanFolder"
)
$file = Get-ChildItem $Path | Where { $_.CreationTime -ge (Get-Date).AddHours(-1) }
If ($file) {
"Error File Found"
} else {
"Nothing Found"
}