我有一个备份文件夹F:\ DATA \ 01172014 - 这个文件夹有五个子目录\ Folder1,\ Folder2,Folder3,Folder4,Folder5
F:\ DATA \ 01172014 .. .. \ Folder1中 .. \文件夹2 .. \ Folder3 .. \ Folder4 .. \ Folder5
我想将文件夹1到5复制到E:\ Main位置覆盖现有文件夹
E:\主 .. \ Folder1中 .. \文件夹2 .. \ Folder3 .. \ Folder4 .. \ Folder5
我的问题是,当我运行脚本时,它找到01172014文件夹并将其复制到E:\ Main作为相同的名称,并且不会覆盖旧文件夹
E:\主 .. \ 01172014 .. \ Folder1中 .. \文件夹2 .. \ Folder3 \ Folder4 .. \ Folder5
我的问题是我缺少什么
这是我正在使用的代码: -
Get-ChildItem -Path F:\DATA -r |
Where-object {$_.PSIscontainer -and (($_.lastwritetime.date -eq ((get-date).adddays(-1)).date))} |
% { Copy-Item $_.fullName -destination E:\Main\ -force -R -whatif}
答案 0 :(得分:0)
你告诉它要复制带有日期戳的文件夹和内容,它就是。
尝试使用类似这样的内容来复制日期戳文件夹及其子文件夹的内容,但不复制文件夹本身(-Container
开关保留结构):
$BackupDir = Get-ChildItem ("F:\DATA\" + (((get-date).AddDays(-1).ToString("MMddyyyy"))))|%{$_.FullName}
Copy-Item $BackupDir -Destination ("E:\Main\" + (Split-Path $BackupDir -leaf)) -R -Container -Force -WhatIf