2

尝试使用 xcopy 并排除文件夹及其所有子文件夹。

C:\Merged\org\a>xcopy /I /E /Y C:\Merged\org\*.* C:\Merged\dest /exclude:"C:\Mer
ged\org\a\*.*"
Can't read file: "C:\Merged\org\a\*.*"

我想我不能排除文件夹,而只能排除带有 xcopy 的文件。

所以我想转向 robocopy,但我不确定要使用哪些标志。

与我上面的 xcopy 等效的 robocopy 是什么?

4

2 回答 2

2

嗯,你可以。继续阅读XCOPY /?

/EXCLUDE:file1[+file2][+file3]... 指定包含字符串的文件列表。每个字符串应位于文件中的单独行中。当任何字符串与要复制的文件的绝对路径的任何部分匹配时,该文件将被排除在复制之外。例如,指定像 \obj\ 或 .obj 这样的字符串将分别排除目录 obj 下的所有文件或所有具有 .obj 扩展名的文件。

问题是/EXCLUDE当您应该指定文件名时指定要排除的路径,其中包含要排除的“路径”(实际上更灵活,见上文)。您收到的错误消息甚至暗示了这一点。

创建一个文件,例如C:\ignore.txt,包含“C:\Merged\orga\a\”行,然后调用XCOPY如下:

xcopy.exe C:\Merged\org\*.* C:\Merged\dest /exclude:C:\ignore.txt /I /E /Y

如果你仍然想使用 robocopy,你可以这样做:

robocopy.exe c:\merged\org c:\merged\dest /xd c:\merged\org\a /IS /E
于 2012-01-18T15:33:54.080 回答
0

从命令行xcopyrobocopy. 您可以从这里找到它:https ://sf.net/p/contools 。

脚本:

https://sf.net/p/contools/contools/HEAD/tree/trunk/Scripts/Tools/std/xcopy_dir.bat https://sf.net/p/contools/contools/HEAD/tree/trunk/Scripts /Tools/std/xcopy_file.bat

于 2017-08-21T10:38:23.597 回答