Win10下批处理复制当前文件夹(包括子文件夹)下的所有?tf 文件(不包括子文件夹目录),bat该怎么写?

搜索半天没找到当前系统可用的批处理文件。
本人电脑小白一个,例如想从U盘(不同电脑盘符不定)一次性批量复制x.otf ,x.ttf到固定文件夹中,如从F:\S利用F:\S\x.bat中包括F:\S\A;F:\S\B等文件夹中的字体文件批量复制到C:\Fonts。
求教,谢谢。
额外再问一句,如果是想使用的时候可以自己输入路径呢?

复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起运行@echo off
rem 查找当前文件夹下所有指定类型格式/扩展名/后缀名的文件并复制到指定文件夹/目录里
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
set ext=*.otf *.ttf
set "newfolder=C:\Fonts"
if not exist "%newfolder%\" (md "%newfolder%\")
cd /d "%~dp0"
for /f "delims=" %%a in ('dir /a-d/b/s %ext% 2^>nul') do (
    echo;"%%a" --^> "%newfolder%\"
    copy /y "%%a" "%newfolder%\"
)
:end
echo;%#% +%$%%$%/%@% %z%
pause
exit

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-02-11
@echo off
::设置要复制的文件目录路径,留空即为当前目录
set SrcDir=
::设置保存复制后的文件路径,必填项
set SavDir=
::设置要复制的文件格式,支持多格式,每个格式直接用英文逗号隔开
set FileExt=*.txt
if defined cd /d "%SrcDir%"
for %%a in (%FileExt%) do copy "%%~a" "%SavDir%\"
pause追问

这个我试过了,但复制的不包括子文件夹啊,不过谢谢。

本回答被网友采纳
第2个回答  2020-02-20
直接使用win10的搜索功能啊:
打开F盘,在我的电脑右上角搜索搜索“.otf",就会把F盘下所有.otf格式的文件搜出来,然后复制,再粘贴到C:\Fonts即可。重复操作.ttf格式的。
相似回答