我正在尝试修改StackOverflow上发布的现有批处理文件以完成我的任务,但需要关于批处理文件语法和命令的特定指导。
该任务是将一个装满图像文件的文件夹按创建日期和/或修改日期(以较早的日期为准)排序到子文件夹中。
下面的脚本适用于文件的创建日期,但是,如果一组文件从另一个文件夹复制过来,则它们都具有相同的创建日期(但保留较早的“修改”日期,因此我希望使用较早的日期)。
非常感谢您提供任何建议。
我一直在尝试修改的代码:
该任务是将一个装满图像文件的文件夹按创建日期和/或修改日期(以较早的日期为准)排序到子文件夹中。
下面的脚本适用于文件的创建日期,但是,如果一组文件从另一个文件夹复制过来,则它们都具有相同的创建日期(但保留较早的“修改”日期,因此我希望使用较早的日期)。
非常感谢您提供任何建议。
我一直在尝试修改的代码:
@echo off
setlocal enabledelayedexpansion
set RawData="C:\Users\Jernau\source_image\*.jpg"
set ArchiveFolder="C:\Users\Jernau\source_image\organised\"
for %%a in ("%RawData%") do (
echo Processing %%~nxa ...
set File=%%~fa
for /f "tokens=1* delims=," %%a in ('wmic datafile where "name=
'!File:\=\\!'" get 'CreationDate' /format:csv ^| find /i
"%ComputerName%"') do (set CreationDate=%%b)
echo %%~nxa: !CreationDate!
set cYear=!CreationDate:~0,4!
set cMonth=!CreationDate:~4,2!
set cDay=!CreationDate:~6,2!
set TimeStamp=!cYear!-!cMonth!-!cDay!
if not exist "%ArchiveFolder%\!TimeStamp!" (
md "%ArchiveFolder%\!TimeStamp!"
)
move "!File!" "%ArchiveFolder%\!TimeStamp!"
)