使用{*。*}从部件文件名创建文件夹

时间:2014-02-27 19:54:17

标签: windows file batch-file directory

我有一个包含1000多张图片的文件夹。所有图像名称都是这样的: {数} {数} {日期} {名称} {NAME2} 1.JPG

我需要一个批处理(.bat文件)脚本,它将使用图像{name}创建一个文件夹,子文件夹带有{date}并移动文件。

我尝试使用set "folder1=!filename1:~20,25!",但我的第一个{number}和第二个{number}可以有3-4个字符,我无法创建规则。

你可以帮我吗?

1 个答案:

答案 0 :(得分:3)

for %%z in ("c:\folder\*.jpg") do for /f "tokens=3,4 delims={}" %%a in ("%%~nz") do (
    mkdir "c:\target\%%b\%%a" >nul 2>nul
    echo move "%%~fz" "c:\target\%%b\%%a"
)

如果输出到控制台是正确的,请在echo命令之前删除move