[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理如何循环改名移动文件?

写一个批处理文件
c:\1\目录下一个文件 20130323_001.jpg 拷贝到  c:\2\下,十分钟后,将c:\1\目录下的文件改名为20130323_002.jpg 再拷贝到c:\2\目录下。201303223为今天日期,到24日再更改为20130324后面_001为流水号。每次增加1.

不取那个日期也行,后面流水号增加就可以。感谢

TOP

试试:
  1. @echo off&setlocal enabledelayedexpansion
  2. set "date="
  3. for /f "tokens=1-3 delims=/\-: " %%a in ("!date!") do set dt=%%a%%b%%c
  4. for %%a in ("c:\1\*_*.jpg") do (
  5.    set "file=%%a"
  6.    for /f "tokens=2 delims=_." %%b in ("%%a") do set n=1%%b
  7. )
  8. for /l %%a in () do (
  9.    set /a n+=1
  10.    move /y "c:\1\!file!" "c:\1\!dt!_!n:~-3!.jpg"
  11.    set "file=!dt!_!n:~-3!.jpg"
  12.    copy /y "c:\1\!file!" "c:\2\!file!"
  13.    ping /n 600 127.1 >nul
  14. )
复制代码

TOP

非常感谢楼上。
我试了一下 能跑起来
开始时候提示  系统找不到指定文件
ping 不是内部或外部命令 也不是可运行的程序 或批处理文件
过了一小会,提示复制成功
c:\2\下产生很多文件,似乎拷贝文件间隔时间非常短。

是不是我这缺什么可执行文件?

TOP

回复 4# zhifuz


右键单击“我的电脑”→“属性”→“高级”→“环境变量”→选中path系统环境变量→“编辑”→在“变量值”输入框开头添加以下内容:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

楼上哥们,我加上环境变量直接就提示
文件名、目录名或卷标语法不正确
系统找不到指定的文件

不用取前面日期。直接把流水号增加就行,简单点能用我以后再改就可以,感谢。

TOP

回复 6# zhifuz


    把@echo off删掉,完整的执行过程贴出来看看。

TOP

使用上面的代码 换了一台计算机 就执行不下去了。提示
文件名、目录名或卷标语法不正确
系统找不到指定的文件
删除掉@echo off  执行后一闪而过,c:\2\文件夹下产生文件

TOP

返回列表