我想在Windows中使用批处理脚本,我可以将一个目录复制到另一个目录。如果此目录已存在,然后对于已存在且具有相同名称和位置的每个文件,则应覆盖该目录,如果该目录不存在,则应仅添加该目录。
最后它应该是一个批处理脚本,我可以传递2个参数,source&目的地。
答案 0 :(得分:32)
在批处理文件中执行此操作
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
答案 1 :(得分:4)
似乎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
答案 2 :(得分:3)
您是否考虑过使用“xcopy”命令?
xcopy命令将为您完成所有这些操作。
答案 3 :(得分:2)
试试这个:
xcopy %1 %2 /y /e
%1
和%2
是您传递给批处理文件的源和目标参数。即C:\MyBatchFile.bat C:\CopyMe D:\ToHere
答案 4 :(得分:1)
只需使用xcopy /y source destination