如何用批处理实现将一个文件夹下面的所有子文件夹下面的文件复制到一个新的文件夹下面!
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off
md hehe
for /f "delims=" %%i in ('dir /s/b e:\办公学习\*.*') do (
copy %%i hehe
)
@echo off
set source=a
set destination=b
for /r "%source%\" %%i in (*) do (
xcopy "%%i" "%destination%\" /y/i
)
pause 将D:\music1\ D:\music2\ D:\music3\目录的*.mp3文件要移动到U盘(G:\music)下:(若是拷贝将move直接换为copy)
CODE:
--------------------------------------------------------------------------------
@echo off&setlocal enabledelayedexpansion
set "file=music1\*.mp3 music2\*.mp3 music3\*.mp3"
set "drive=D:\"
set "U=G:\music\"
for /r "%drive%" %%a in (%file%) do (
if exist "!U!%%~nxa" call :re "%%~na" "%%~xa"
move "%%a" "!U!%%~na!n!%%~xa"
)
goto :eof
:re
set "n=1"
:loop
if exist "!U!%~1_%n%%~2" set/a n+=1&goto loop
set "n=_%n%"&goto :eof
将D:盘内的所有(包括子目录内的)mp3文件copy到...
CODE:
--------------------------------------------------------------------------------
@echo off&setlocal enabledelayedexpansion
set "file=*.mp3"
set "drive=D:\"
set "U=G:\music\"
for /r "%drive%" %%a in (%file%) do (
if exist "!U!%%~nxa" call :re "%%~na" "%%~xa"
move "%%a" "!U!%%~na!n!%%~xa"
)
goto :eof
:re
set "n=1"
:loop
if exist "!U!%~1_%n%%~2" set/a n+=1&goto loop
set "n=_%n%"&goto :eof
未测试.
若有疑问请到下面的帖子跟帖:
http://www.cn-dos.net/forum/view ... ge=1&highlight=