在 Powershell 的特定日期内复制文件的问题
Issue with Copying files from and too within certain dates in Powershell
我是新手 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)}
在您的特定情况下,Where-Object
需要在 Copy-Item
之前。在 Where-Object
根据日期排除文件之前调用 Copy-Item
命令。
这是重新排列的代码:
Get-ChildItem $src -exclude "Aeromark" -Recurse |
Where-Object {($_.LastWriteTime.Date -ge $StartDate.Date) -and ($_.LastWriteTime.Date -le $EndDate.Date)} |
Copy-Item -Destination $dst -Force
我是新手 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)}
Where-Object
需要在 Copy-Item
之前。在 Where-Object
根据日期排除文件之前调用 Copy-Item
命令。
这是重新排列的代码:
Get-ChildItem $src -exclude "Aeromark" -Recurse |
Where-Object {($_.LastWriteTime.Date -ge $StartDate.Date) -and ($_.LastWriteTime.Date -le $EndDate.Date)} |
Copy-Item -Destination $dst -Force