Batch file 将文件重命名为创建时间(仅限批处理文件)

Batch file 将文件重命名为创建时间(仅限批处理文件),batch-file,batch-rename,Batch File,Batch Rename,不确定只有批处理文件才能实现这一点 我有一个名为BaseFile.7z的文件,位置是E:\Backup\C Drive Zip\BaseFile.7z 是否可以创建一个批处理命令,用其创建日期重命名文件?例如BaseFile-02-19-2015.7z 我现在有一个命令,用我粘贴在下面的当前日期重命名文件以供参考,但这并不是我想要的。我需要创建日期 RENAME "E:\Backup\C Drive Zip\Jaipur.txt" "BaseFile - %date:/=-%.txt" @EC

不确定只有批处理文件才能实现这一点

我有一个名为BaseFile.7z的文件,位置是E:\Backup\C Drive Zip\BaseFile.7z

是否可以创建一个批处理命令,用其创建日期重命名文件?例如BaseFile-02-19-2015.7z

我现在有一个命令,用我粘贴在下面的当前日期重命名文件以供参考,但这并不是我想要的。我需要创建日期

RENAME "E:\Backup\C Drive Zip\Jaipur.txt" "BaseFile - %date:/=-%.txt"
@ECHO关闭
SETLOCAL
设置“filename=U:\sourcedir\zzz.zzz”
如果不存在“%filename%”,则未找到回显“%filename%”&转到:eof
设置“日期部分=”
对于/f“tokens=1-3delims=/-:”('dir/tc“%filename%”)中的%%a如果“%%c”neq“SET”datepart=%%a-%%b-%%c,则执行该操作
对于(“%filename%”)中的/f%%a,对于(“%datepart%”)中的/f%%d,执行ECHO(REN“%%a”-“%%~na%%d%%~xa”
后藤:EOF
所需的REN命令仅用于测试目的。
ECHO
ed。验证命令正确后,将
ECHO(REN
更改为
REN
以实际重命名文件

请注意,在使用日期引用时存在一般的随意性。每个文件上有三个日期-实际创建日期(use/tc)、上次访问(/ta)和上次写入(/tw)

该过程定位文件,然后读取选择了适当日期的
dir
列表。列表中包含第三个非空标记的唯一行或最后一行是相关文件的日期/时间,因此
datepart
将获取
yyyy-mm-dd-hh

然后,
for/f%%a
将完整文件名应用到
%%a
中,准备将其划分为组件,而
for/f%%d
将第一个令牌从
日期部分
分配到%%d中

把所有的部件放在一起,结果会被报告