- 帖子
- 19
- 积分
- 35
- 技术
- 0
- 捐助
- 0
- 注册时间
- 2020-4-1
|
本人每天有一堆的图片要进行分类,
每个文件夹内的图片文件名所需创建的文件夹位置都不一样,如N1文件夹内的图片命名规则如下:
N10035-AKDWLP-1-IP60D--OneSize-NO1-Black-1-printArea-3123084.png
N10001-Q84OP6-1-IP70D--OneSize-NO1-Black-1-printArea-3124961.png
N10039-BJ35QX-1-IP80X--OneSize-NO1-Black-1-printArea-3118892.png
N10036-6PY6HZ-1-IP600--OneSize-NO1-Black-1-printArea-2701364.png
N10011-IBCEUC-1-IP700--OneSize-NO1-Black-1-printArea-2838165.png
N10038-CUJHO7-1-SS7E--OneSize-NO1-Black-1-printArea-3126886.png
]要创建以上这样的文件夹对图片进行归类。
N2文件夹的图片命名规则如下:
N40018-7CJRW4-1-IPD10-OneSize-NO1-10.2_-1-printArea-3126582.png
N40002-88HOEW-1-IPD10-OneSize-NO1-10.5_-1-printArea-3123786.png
N40011-677NFR-1-IPDM4-iPadair1-29.7_-NO1-Black-1-printArea-3120165.png
N40037-NC4QES-1-IPDM4-iPadmini4-57.9_-NO1-Black-1-printArea-3123785.png
要创建以上这样的文件夹对图片进行归类。
但是用以下这个代码,只能对指定位置的字母串取值并给文件夹命名,而且只能在当前文件夹内才能使用。
@echo off
setlocal enabledelayedexpansion
for %%a in (*.png) do (
set "NameStr=%%~a"
if not exist "!NameStr:~18,5!" md "!NameStr:~ 18,5!"
move "%%~a" "!NameStr:~ 18,5!\"
)
pause
exit
我想请教的是,这代码要如何修改才能实现在根目录下,实现对各个文件夹按各自的规则创建文件夹名并对有相应名字的图片进行归类。 |
|