@Echo OffFor /f "tokens=*" %%i in ('dir /ad /b /s "%~dp0"') do (For /f "tokens=*" %%j in ('dir /a-d /b /s "%%i\*.*"') do (Ren "%%j" "%%~nxi%%~xj"Move "%%i\%%~nxi%%~xj" "D:\文件提取到此文件夹\"Rd /q "%%i"))Pause以上内容保存为批处理文件(xx.bat),和要提取文件的子文件夹放在一起即可,例如和文件夹1、文件夹2放在一起.默认保留文件后缀名,如果不保留文件后缀名请删除"%%~xj"
追问不好意思,不是太明白,我之前在百度里收到一个获取文件名的bat。
for /r %cd% %%a in (*.jpg) do echo %%~na >>生成文件.txt
现在想实现一个将“生成文件”的文件名可以根据当前文件夹的名字命名。
如当前文件夹名称为”公司“包含文件名分别为0~10的文件,获取内容并生成txt文件。