Re: [问题] CMD 如何建立TXT内的文字档名料夹

楼主: giacch   2018-10-29 11:59:47
※ 引述《xam93 (Vogt)》之铭言:
: 刚开始学习cmd,目前在撰写一个相片分类的bat
: 因为照片习惯依年分月份日期分类储存
: 像是20180125 20180506 ...
: 目前已经进行到能读取相片日期并存入文件档内
: 想请为各位大大如何使用md代码建立以txt内的档名资料夹
: 程式如下
: @ECHO on&setlocal enabledelayedexpansion
: rem dir /o:d/t:w *.jpg
: FOR /f "skip=4 tokens=1" %%i IN ('dir /o:d/t:w *.jpg') DO (
: echo %%i>>a.txt
: )
: For /F "tokens=1-3 delims=/" %%a in ('Type a.txt^|Findstr ".*"') do (
: echo %%a%%b%%c>>b.txt
: set foldername=%%a%%b%%c
: )
: for /f "delims=" %%e in (b.txt) do (
: if not defined %%e set %%e=Def & >>c.txt echo %%e
: )
: XCOPY Source "*""/foldername" /S /D:%%b-%%c-%%a /Y
: rd 0 /S /Q
: a.txt
: b.txt
: c.txt
: pause
: 感恩
先看看对不对, 没问题再注解 SET CH=ECHO 那一行
@ECHO OFF
SET CH=ECHO
FOR %%A IN (*.JPG) DO CALL :MOVEFILE "%%~TA" "%%~A"
PAUSE
GOTO :EOF
:MOVEFILE
IF "%~1"=="" GOTO :EOF
IF "%~2"=="" GOTO :EOF
SET YYYYMMDD=%~1
SET YYYYMMDD=%YYYYMMDD: =0%
SET YYYYMMDD=%YYYYMMDD:/=%
SET YYYYMMDD=%YYYYMMDD::=%
SET YYYYMMDD=%YYYYMMDD:~0,8%
IF NOT EXIST "%YYYYMMDD%\" (
ECHO MKDIR "%YYYYMMDD%"
%CH% MKDIR "%YYYYMMDD%"
)
ECHO MOVE "%~2" "%YYYYMMDD%"
%CH% MOVE "%~2" "%YYYYMMDD%"
GOTO :EOF

Links booklink

Contact Us: admin [ a t ] ucptt.com