1

到目前为止,我已经将它复制到可以将所有文件c:\Users\John\Folder1c:\Users\John\Folder2.

但我希望完全交换文件夹。

例如替换c:\Users\John\Folder1c:\Users\John\SomeFolder\Folder1.

我现在有这个:xcopy c:\Users\John\SomeFolder\* c:\Users\John\Folder1 /s /i

这只是从c:\Users\John\SomeFolder\Folder1to复制所有文件,c:\Users\John\Folder1但保留之前存在的文件。我想要替换整个文件夹。如果我正在复制的新文件夹不再有这些文件,我希望将它们删除。

抱歉,如果这令人困惑 - 非常感谢任何帮助。

4

4 回答 4

1

这会将第一个文件夹镜像到第二个文件夹。

非常小心路径是正确的。

@echo off
robocopy "c:\Users\John\SomeFolder\Folder1" "c:\Users\John\Folder1" /mir
于 2014-07-17T09:50:23.310 回答
1

我认为您可以创建一个批处理文件来执行此操作。

伪代码:

  1. 擦除目录 1 的内容
  2. 将目录1的内容复制到目录2

代码:在记事本中 创建一个名为的文件swapFiles.bat,然后输入以下代码:

rd /s %1
mkdir %1
xcopy /s /i %2\* %1

如何使用它:

swapFiles c:\Users\directory1 c:\Users\directory2

directory1old目录(即将被清除的目录)

希望这可以帮助你

于 2013-01-31T23:48:38.197 回答
1

也许我完全没有理解你的意思,但这不会起作用吗?(例子):

rename Folder1 transit
rename Folder2 Folder1
rename transit Folder2
于 2013-02-01T00:16:23.810 回答
0

您是否要在复制文件夹 1 之前删除此文件夹 c:\Users\John\SomeFolder 如果是这样,此代码可能适合您

@echo off

robocopy /s c:\Users\John\Folder1 c:\Users\John\SomeFolder\Folder1
rmdir /s /q c:\Users\John\Folder1
于 2013-02-01T08:54:33.823 回答