Powershell 复制项的行为因目标文件夹是否存在而不同
简单任务,我正在尝试将以下文件/文件夹结构复制到新位置(source2): 使用以下命令:Powershell 复制项的行为因目标文件夹是否存在而不同,powershell,Powershell,简单任务,我正在尝试将以下文件/文件夹结构复制到新位置(source2): 使用以下命令: Copy-Item C:\source C:\source2 -Recurse -Force 这将在第一次运行时产生所需的输出: c:\ ----source2 --------source 但是,在第二次运行时,它会在“源”下创建一个额外的“源”文件夹,即: 这是为什么?使脚本可重复的正确方法是什么?这应该可以: Copy-Item C:\source\* C:\source2 -Recurse -
Copy-Item C:\source C:\source2 -Recurse -Force
这将在第一次运行时产生所需的输出:
c:\
----source2
--------source
但是,在第二次运行时,它会在“源”下创建一个额外的“源”文件夹,即:
这是为什么?使脚本可重复的正确方法是什么?这应该可以:
Copy-Item C:\source\* C:\source2 -Recurse -Force
这似乎是一个错误
复制项目令人困惑,因为在复制文件夹时
目标不存在它假定您正在尝试复制/重命名
源是目标,而如果目标存在,则为
假设您试图在它下面复制
这真是令人讨厌的行为,你可以通过投票来改变它
在这里投票表决这个问题
不幸的是,问题链接已失效。这会产生奇怪的行为。如果c:\source2尚不存在,则会在c:\source2中创建一个名为“source2”的空文件(而不是文件夹)?请在重复的问题中查看我的原始问题。
c:\
----source2
--------source
------------source
Copy-Item C:\source\* C:\source2 -Recurse -Force