我有以下代码,它将查看修改日期,我可以复制一个文件,单独运行。但是,我仍然无法让代码继续查看文件以及何时检测到复制更改。
Get-Childitem "directory goes here" -File |
Where {$_.LastWriteTime -lt $date}
Copy-Item -Path 'directory goes here' -Destination 'directory goes here'
我可以就我出错的地方找到方向吗?
答案 0 :(得分:0)
你的例子几乎已经完成了。您可以进一步扩展您的管道:
$UNC = '\\share'
$Path = 'C:\Temp'
Get-ChildItem -Path $UNC |
Where-Object { $_.LastWriteTime -lt (Get-Date) } |
ForEach-Object {
Copy-Item -Path $_.FullName -Destination $Path
}
虽然有所改进:
$Path = 'C:\Temp'
$UNC = Get-ChildItem -Path '\\share' -File
$Local = Get-ChildItem -Path $Path -File
ForEach ($File in $UNC)
{
$Compare = $Local | Where-Object { $_.Name -eq $File.Name }
If ($Compare -and $Compare.LastWriteTime -gt $File.LastWriteTime)
{
Copy-Item -Path $File.FullName -Destination $Path -Force
}
}