我尝试复制1年前最后一次访问的文件和文件夹,这是我的脚本:
$Source = "\\UNC\Path\Folder\"
$Dest = "\\UNC\Path2\Folder\1"
$Get = Get-ChildItem $Source -Recurse | where {
$_.LastAccessTime -ge (Get-Date).AddMonths(-12).ToString("yyyy-MM-dd")
}
$Get | Copy-Item -Destination $Dest -Recurse
该脚本有效,只不过它多次复制文件和文件夹。
例如,它将\\UNC\Path\Folder\a\b\File1.txt
复制到两者:
\\UNC\Path2\Folder\1\a\b\File1.txt
\\UNC\Path2\Folder\a\b\File1.txt
请注意,它会跳过名为1
的文件夹,并将其直接放在Folder
下。
现在File1.txt
已被复制两次,它是同一文件,只是目的不同。位置。
我已经用Google搜索并搜索了该论坛,但未找到任何内容。知道会是什么吗?
答案 0 :(得分:1)
我按照@TessellatingHeckler的建议使用RoboCopy,效果很好!
Robocopy.exe \\Source\folder\Folder1 \\dest\folder\folder\1 /MAXLAD:365 /e /copyall /log:C:\Logs\log.txt
/ maxlad:指定最大上次访问日期(不包括文件) 自N开始未使用。
/ minlad:指定最小最后访问日期(不包括文件) 从N开始使用)如果N小于1900,则N指定天数。 否则,N以YYYYMMDD格式指定日期