powershell - Copy-Items:多次复制同一个文件夹
问题描述
我尝试复制 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
已经复制了两次,它是同一个文件,只是目标不同。地点。
我已经用谷歌搜索并搜索了这个论坛,但我没有找到任何东西。知道它可能是什么吗?
解决方案
我按照@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 的日期
推荐阅读
- ruby - 如何关联不同类型的角色(代理和客户)
- php - 直到 n 可被 A 或 B 整除但不能被 C 整除的数字列表
- java - 如何在 ubuntu 中使用 Intellij 的 jre
- sql - 如何更新与 SQL Server 中两个源表相比的目标表列值
- javascript - 联系表格电话号码格式Javascript
- python-3.x - 如何为高光谱图像分类制作真值或训练课程
- laravel - 存在 slug 时的可选 URL 段
- gwt - Eclipse + GWT 2.8.1。:虽然超级开发模式处于活动状态,但对 *.ui.xml 文件的更改不显示
- python - 如何计算午夜时列中的值之间的时间差?
- wordpress - 删除 nginx WordPress 多站点的尾部斜杠