项目急需一个小批处理程序,这方面的大侠们帮帮忙,不甚感激
背景:目录SRC下有很多子目录(约300多个),每个子目录中内容组织形式都是一致的
比如子目录1中有 g1-0001.wav, g1-0002.wav ...... g1-0150.wav
子目录2中有 g2-0001.wav, g2-0002.wav ...... g2-0150.wav
还存在一个目标目录DES,DES中有三个子目录cmd1,cmd2,cmd3
现在需要把运行批处理从SRC目录中每个子目录中挑选出特定的文件,比如指定只挑选文件名后面为-0002.wav的文件并复制到
cmd1目录中,在一次挑选-0008.wav的文件到cmd2目录中,-0120.wav文件到cmd3目录中。
相当于一个文件筛选
我对批处理实在不熟,唉!
dos和windows的批处理功能很弱,这个需求可以写个小程序完成,批处理貌似做不了。
哇哈哈,自己瞎捣鼓已经搞出来,批处理还是很强的嘛。
不过也差点把我搞崩溃。。嘿嘿~。。~
也算接触了下batch了
公布一下,请高手斧正
@echo off
echo #################################################
cd F:\Voice Test\Source Audio\audio\SRC
for /f "delims=" %%d in ('dir /ad /s /b /on') do (
xcopy "%%d\*-0016.wav" ..\DES\cmd1\
xcopy "%%d\*-0020.wav" ..\DES\cmd2\
xcopy "%%d\*-0028.wav" ..\DES\cmd3\
xcopy "%%d\*-0081.wav" ..\DES\cmd4\
xcopy "%%d\*-0055.wav" ..\DES\cmd5\
xcopy "%%d\*-0051.wav" ..\DES\cmd6\
xcopy "%%d\*-0053.wav" ..\DES\cmd7\
xcopy "%%d\*-0056.wav" ..\DES\cmd8\
xcopy "%%d\*-0052.wav" ..\DES\cmd9\
xcopy "%%d\*-0033.wav" ..\DES\cmd10\
xcopy "%%d\*-0029.wav" ..\DES\cmd11\
xcopy "%%d\*-0087.wav" ..\DES\cmd12\
xcopy "%%d\*-0107.wav" ..\DES\cmd13\
xcopy "%%d\*-0031.wav" ..\DES\cmd14\
xcopy "%%d\*-0076.wav" ..\DES\cmd15\
)
@echo ###################### done #####################
pause