PowerShell复制项目未复制所有文件

PowerShell复制项目未复制所有文件,powershell,copy-item,Powershell,Copy Item,我对PowerShell中的复制项有一个奇怪的问题。下面是两行几乎相同的代码,只是源代码和目标代码不同 Copy-Item "A:\*" -Destination "B:\" -Recurse -Force -Verbose -Confirm:$false -ErrorAction SilentlyContinu Start-Sleep 3 Copy-Item "B:\*" -Destination "D:\" -Recurse -Force -Verbose -Confirm:$false -

我对PowerShell中的复制项有一个奇怪的问题。下面是两行几乎相同的代码,只是源代码和目标代码不同

Copy-Item "A:\*" -Destination "B:\" -Recurse -Force -Verbose -Confirm:$false -ErrorAction SilentlyContinu
Start-Sleep 3
Copy-Item "B:\*" -Destination "D:\" -Recurse -Force -Verbose -Confirm:$false -ErrorAction SilentlyContinu
这些行是脚本的一部分。它首先记录日期并创建日志文件,然后清除B和D驱动器。之后,它开始复制。第一个,将项目A:\复制到B:\工作,它复制所有内容

当PowerShell进入第二个文件夹时,它只复制几个文件夹,只跳过其余的文件夹。这不会给我带来任何错误

当我手动执行第二行时,它可以工作,但当它在脚本中时就不行了

这里出了什么问题?

我会使用它,它包含在所有现代版本的windows中,功能非常强大,几乎可以完成您想要的任何复制功能

ROBOCOPY /MIR <Source> <Target>
ROBOCOPY/MIR
/MIR
是后视镜开关。它将把源复制到目标,并删除目标中源中不存在的任何内容。将目标保留为源的镜像副本


如果目录中包含大量文件,您可能还需要查看
/MT
多线程开关以加快速度。

我会使用robocopy实现这一点:
robocopy/MIR
-
MIR
(镜像)开关将源代码复制到目标,并删除目标中源代码中不存在的任何内容。将目标保留为源的镜像副本。我当前正在使用robocopy复制文件。我会告诉你的。谢谢@James C。你提供了答案。我用了:“机器人复制/MIR A:\B:\/e/copyall/w:1/r:1”,它工作得非常好!它复制了一切。除了进程打开的文件,但我不介意。