如何编写批量脚本将一个目录复制到另一个目录,replace旧文件?

我想在Windows中的批处理脚本,我可以复制一个目录到另一个。 如果这个目录已经存在,那么对于每一个已经存在的文件都有相同的名字和位置,应该被覆盖,如果不存在,就应该加上。

最后,它应该是一个批处理脚本,我可以传递2个参数,源和目标。

Solutions Collecting From Web of "如何编写批量脚本将一个目录复制到另一个目录,replace旧文件?"

在你的批处理文件中做这个

set source=C:\Users\Habib\test set destination=C:\Users\Habib\testdest\ xcopy %source% %destination% /y 

如果你想复制包含空目录的子目录,那么做:

 xcopy %source% %destination% /E /y 

如果你只想复制子目录而不是空目录,那么使用/s就像:

 xcopy %source% %destination% /s /y 

看来,在Windows 7中这个最新的功能是robocopy。

用法示例:

 robocopy <source> <destination> /e /xf <file to exclude> <another file> 

/ e复制子目录,包括空目录,/ xf排除某些文件被复制。

更多选项在这里: http : //technet.microsoft.com/en-us/library/cc733145(v=ws.10).aspx

你有没有考虑过使用“xcopy”命令?

xcopy命令将为你做所有的事情。

尝试这个:

xcopy %1 %2 /y /e

%1%2是传递给批处理文件的源和目标参数。 即C:\MyBatchFile.bat C:\CopyMe D:\ToHere

只需使用xcopy /y source destination