[批处理]重命名文件夹为时间+日期+随机数

 1 @echo off
 2 title test
 3 set tmpdir=tmpdir
 4 if exist %tmpdir%\nul (rmdir /S /Q %tmpdir%) else if exist %tmpdir% (del /F %tmpdir%)
 5 md %tmpdir%
 6 cd %tmpdir%
 7 :loop
 8 set /a c = %c% + 1
 9 set tmp=%random%
10 md %tmp%
11 for /f "delims= " %%i in ('date /t') do set name=%%i
12 set name=%name:/=.%_%time:~,8%
13 set name=%name::=.%
14 set name=%name:~5,17%.%random%
15 set name=%name: =0%
16 (ren %tmp% %name%) & (echo %c%.创建目录【%tmp%】成功,并重命名为【%name%】)
17 if %c% lss 20 goto loop
18 echo 请进入%tmpdir%目录下查看后再按任意键继续 19 pause>nul 20 cd ..
21 rmdir /S /Q %tmpdir%

突然发现其中这行有问题,

1 (ren %tmp% %name%) & (echo %c%.创建目录【%tmp%】成功,并重命名为【%name%】)

因为获取时间中间部分有空格出现,会造成ren命令语法不正确,所以最好用零填充。

1 set name=%name: =0%

 

@echo off
title test
set tmpdir=tmpdir
if exist %tmpdir%\nul (rmdir /S /Q %tmpdir%) else if exist %tmpdir% (del /F %tmpdir%)
md %tmpdir%
cd %tmpdir%
:loop
set /a c = %c% + 1
set tmp=%random%
md %tmp%
set name=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.%random%
(ren "%tmp%" "%name%") & (echo %c%.创建目录【%tmp%】成功,并重命名为【%name%】)
if %c% lss 20 goto loop
echo 请进入%tmpdir%目录下查看后再按任意键继续
pause>nul
cd ..
rmdir /S /Q %tmpdir%

 

posted on 2013-06-05 16:01 amtoor 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/amtoor/archive/2013/06/05/3119085.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值