使用bat脚本将日期戳添加到目录中的多个文本文件

时间:2016-03-24 10:10:16

标签: batch-file

我有一个目录,其中有一堆文本文件,如下所示:

test_00.txt
test_01.txt
test_02.txt

虽然金额总是在变化,但最多可以有100个这样命名的文件。我想用这样的日期戳重命名所有文件:

test_00_23032016
test_01_23032016
test_02_23032016

到目前为止,我发现这样做的唯一方法是复制一行代码超过100次,我认为必须有更好的方法来做到这一点?

我的代码:

    ren test_00.txt test_00_%date:~-10,2%%date:~-7,2%%date:~-4,4%.txt
    ren test_01.txt test_01_%date:~-10,2%%date:~-7,2%%date:~-4,4%.txt
    ren test_02.txt test_02_%date:~-10,2%%date:~-7,2%%date:~-4,4%.txt

1 个答案:

答案 0 :(得分:0)

如果最大数量为99且最小数量为00

,则可以使用此项
@echo off
setlocal EnableDelayedExpansion
for /l %%i in (0,1,99) do (
    set "number=0%%i"
    set "number=!number:~-2!"
    if exist "test_!number!.txt" ren "test_!number!.txt" "test_!number!_!date:~-10,2!!date:~-7,2!!date:~-4,4!.txt"
)