Using xcopy to copy files from several directories to one directory

一曲冷凌霜 提交于 2019-11-28 18:50:02
kokeksibir

As DandDI said, you don't need xcopy. for statement helps much. However, you don't need to state process outcome of dir command as well, this command helps better

for /R c:\source %f in (*.xml) do copy "%f" x:\destination\

By the way, when you use it from a batch file, you need to add spare % in front of variable %f hence your command line should be;

for /R c:\source %%f in (*.xml) do copy %%f x:\destination\

when you use it within a batch

  • Should surround %f with double quotes otherwise it will fail copying file names with spaces

You don't need xcopy for that. You can get a listing of all the files you want and perform the copy that way.

For example in windows xp command prompt:

for /f "delims==" %k in ('dir c:\source\*.xml /s /b') do copy "%k" x:\destination\

The /s goes into all subdirectories and the /b lists only the files name and path. Each file inturn is assigned to the %k variable, then the copy command copies the file to the destination. The only trick is making sure the destination is not part of the source.

The Answer to this problem which I think is "How to gather all your files out of all the little subdirectories into one single directory" is to download a piece of software called XXCOPY. This is freely available via XXCOPY.COM and there's a free non-commercial version fortunately. One of the Frequently Asked Questions on the help facility on XXCOPY.COM is effectively "How do I gather all my files into one directory" and it tells you which switch to use. XXCOPY is though a surefire way of doing this and it comes in a .zip archive so unzipping it can be not that straightforward but it's not particularly difficult either. There is an unzipping program called ZipGenius available through the ZipGenius.it website so maybe before you download XXCOPY then download ZipGenius then it's a smallpart smalltime double wammy(!)

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!