假设我有以下结构并且当前工作目录是root
:
root
- sub1
file1.xml
file2.xml
- sub2
file3.css
- _target
{is an empty folder}
run.bat
我想在保留结构的情况下xcopy
进行复制。因此结果是:sub1
_target
- _target
- sub1
file1.xml
file2.xml
然而,当我尝试添加参数(即/I
、/S
、的任意组合/E
)时,xcopy
我总是得到这样的结果:
- _target
file1.xml
file2.xml
实现上述目标(及其内容)的正确参数是sub1
什么_target
?
我尝试\
在源文件夹和目标文件夹的末尾添加以模仿 unixcp
的神奇行为,但这也无济于事。
请注意,我正在寻找一种不会在参数中不必要地重复文件夹名称的解决方案(这就是我标题中“简单”的意思),我知道这xcopy sub1 _target\sub1 /I
有效!
作为一个最后一招答案robocopy
可能是可以接受的,但我真的更希望xcopy
不要重复参数。
答案1
问题是 /S 和 /E 互相矛盾。要么使用 /S(全部,空文件夹除外),要么使用 /E(全部,包括空文件夹)。
我敢打赌你想使用/E,所以你的xcopy将是:
xcopy sub1 _target\sub1 /I /E