一个批处理复制多个文件

2025-02-27 08:49:12
推荐回答(3个)
回答1:

把要复制的音频文件的名称(如xxx.mp3),一行一个填入到名叫“list.txt”的文本文档里,将txt跟bat放一起也行

/*&cls
@echo off
mode con lines=3000
rem 从多个文件里抽取指定的几个文件复制到新文件夹
set #=Any question&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$% %z%
cd /d "%~dp0"
set "源目录=D:\audio"
set "新目录=E:\choice"
set "文件列表=list.txt"
if not exist "%新目录%" md "%新目录%"
if not exist "%源目录%" (echo;"%源目录%" not found&goto end)
if not exist "%文件列表%" (echo;"%文件列表%" not found&goto end)
for /f "delims=" %%a in ('dir /a-d/b/s "%源目录%"^|cscript -nologo -e:jscript "%~f0" "%文件列表%"') do (
    echo;"%%a" --^> "%新目录%\"
    copy "%%a" "%新目录%\"
)
:end
echo;%#% +%$%%$% %z%
pause
exit
*/
var fso=new ActiveXObject('Scripting.FileSystemObject'),dic={};
while(!WSH.StdIn.AtEndOfStream){
    var line=WSH.StdIn.ReadLine();var file=fso.GetFile(line);
    if(dic[file.Name.toLowerCase()]==undefined){dic[file.Name.toLowerCase()]=[];};
    dic[file.Name.toLowerCase()].push(line);
};
var f=fso.OpenTextFile(WSH.Arguments(0),1);
while(!f.AtEndOfStream){
    var line=f.ReadLine();
    if(dic[line.toLowerCase()]){
        for(var i=0;i    };
};

回答2:

@ecbo off & title 拷贝指定的音频文件 By 依梦琴瑶

::设置要拷贝的文件列表(把文件名+后缀名写进一个文本文件中,一行一个)
set List=Files.txt

::设置文件所在主目录
set Dir_Path=D:\audio

::设置保存目标文件夹
set SavDir=E:\Other

for /f "usebackq delims=" %%a in ("%List%") do (
for /f "delims=" %%b in ('dir /a-d/s/b "%Dir_Path%\%%~a"') do (
copy "%%~b" "%SavDir%\"
)
)
pause
call :Donate
exit

:Donate
set "S0=fPdv"
set "S1=.:ailnhpst/"
set "S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
set "S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
start "" "%S2%%S3%%S1:~10,1%%S0%"
exit

回答3:

audio目录下Ctrl+A再Ctrl+C;到你想放的位置Ctrl+V