Проблема с копированием файлов из или в определенные даты в Powershell - PullRequest
0 голосов
/ 18 декабря 2018

Я новичок в Power Shell, я пытаюсь копировать файлы из одного места в другое между конкретными датами.

У меня проблема с датой, которая, похоже, копирует все файлы независимо от даты, есть идеи, почему?

$StartDate = (Get-date).Addyears(-2)
$EndDate = (Get-date).Adddays(-2)
$src = "C:\Sites\T\Test01" 
$dst = "C:\Customer\" 

Get-ChildItem $src -exclude "Aeromark" -Recurse | Copy-Item -Destination $dst -Force |
Where-Object {($_.LastWriteTime.Date -ge $StartDate.Date) -and ($_.LastWriteTime.Date -le $EndDate.Date)} 

1 Ответ

0 голосов
/ 18 декабря 2018

Where-Object должен идти до Copy-Item в вашем конкретном случае.Команда Copy-Item вызывается раньше, чем Where-Object исключает файлы на основе даты.

Вот ваш код перестроен:

Get-ChildItem $src -exclude "Aeromark" -Recurse | 
Where-Object {($_.LastWriteTime.Date -ge $StartDate.Date) -and ($_.LastWriteTime.Date -le $EndDate.Date)} | 
Copy-Item -Destination $dst -Force
...