批处理根据文件名创建同名文件夹并复制文件到文件夹中

应用场景:
一个目录下有若干文件,但是,有一定规则,如有按年份命名,

1998-001.jpg ~ 1998-xxx.jpg
1999-001.jpg ~ 19998-xxx.jpg
...

这样,根据"tokens=1,* delims=-"切分字符串,并创建年份的目录,保存对应的所有文件。

@echo off
@REM @Author: xianghongai@gmail.com
title   根据文件名自动创建目录存放文件  by:小可(xianghongai@gmail.com)
@echo 根据文件名自动创建目录存放文件
@echo -------------------------------------

:GTBegin
@echo 默认处理目录下所有格式文件,确定继续?(y/n)
set /p GTConfirm=
if "%GTConfirm%"=="y" goto GTYES
if "%GTConfirm%"=="Y" goto GTYES
if "%GTConfirm%"=="n" goto GTNO
if "%GTConfirm%"=="N" goto GTNO
echo 请输入正确的指令
pause >nul
goto GTBegin

:GTYES
@echo -------------------------------------
set /p FilePath=需要处理的目录:
cd /d %FilePath%
for /f "tokens=1,* delims=-" %%J in ('dir /b *.*') do (
    if not exist "%%J\" md "%%J"
    move /-y "%%J-%%K" "%%J"
    )
echo. :) 搞定
pause >nul
exit

:GTNO
exit

[su_highlight background=”#94a1f7″]文件名中只要是以 “-”分割即可[/su_highlight]

转载请注明本文链接:https://blog.weixiaoline.com/1053.html

发表评论

您的电子邮箱地址不会被公开。