中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助:文件夹内特殊文件更名为:文件名+当前日期
作者:
标题: 求助:文件夹内特殊文件更名为:文件名+当前日期 上一主题 | 下一主题
lqs623
贫困用户





积分 -3
发帖 30
注册 2007-8-13
状态 离线
『楼 主』:  求助:文件夹内特殊文件更名为:文件名+当前日期

要求:文件夹内不带文件名+日期的文件名更名为:文件名+当前日期,带文件名+日期(不更名)

既求助:文件名更名为:文件名20100521.zip (文件名是任意名,“20100521”是当前日期)
请帮助修改:ren *.zip "%date:~0,4%%date:~5,2%%date:~8,2%.zip"


达到列:aaa.zip更名为aaa20100521.zip(文件名是任意名,“20100521”是当前日期)
           bbb.zip更名为bbb20100521.zip(文件名是任意名,“20100521”是当前日期)
或用其他批处理达到更名为:文件名+当前日期.zip,及更名为:当前日期+文件名.zip
主要要:文件名+当前日期.zip

[ Last edited by lqs623 on 2010-5-21 at 19:30 ]

2010-5-21 08:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
rs369007
初级用户





积分 147
发帖 131
注册 2008-9-22
状态 离线
『第 2 楼』:  

%date%用字符串截取+rename命令 很简单吧



  freedom!
2010-5-21 14:15
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 3 楼』:  


for %%a in (*.zip) do echo.ren "%%a" "%%~na%date:~0,4%%date:~5,2%%date:~8,2%.zip"




批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-5-21 20:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
rs369007
初级用户





积分 147
发帖 131
注册 2008-9-22
状态 离线
『第 4 楼』:  

你的文件是不是被打开的,重命名之前应该检查文件是否被打开的。或者测试ren 更名后的返回状态(errorlevel)的值.



  freedom!
2010-5-21 23:09
查看资料  发短消息 网志   编辑帖子  回复  引用回复
pdanniel66
初级用户





积分 68
发帖 64
注册 2009-5-23
状态 离线
『第 5 楼』:  

for %%a in (*.zip) do echo.ren "%%a" "%%~na%date:~0,4%%date:~5,2%%date:~8,2%.zip" >> renfile.bat
call renfile.bat

2010-5-22 11:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by Hanyeguxing at 2010-5-21 20:47:
for %%a in (*.zip) do echo.ren "%%a" "%%~na%date:~0,4%%date:~5,2%%date:~8,2%.zip"

这个代码不是执行的,是先用来测试的,看到显示正确后,去掉echo.正式执行就可以。之所以这样写,是因为该代码我未测试。
for %%a in (*.zip) do ren "%%a" "%%~na%date:~0,4%%date:~5,2%%date:~8,2%.zip"




批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-5-22 13:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lqs623
贫困用户





积分 -3
发帖 30
注册 2007-8-13
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by pdanniel66 at  11:30 AM:
for %%a in (*.zip) do echo.ren "%%a" "%%~na%date:~0,4%%date:~5,2%%date:~8,2%.zip" >> renfile.bat
call renfile.bat

非常感谢!更名可以用

2010-5-22 20:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lqs623
贫困用户





积分 -3
发帖 30
注册 2007-8-13
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by pdanniel66 at  11:30 AM:
for %%a in (*.zip) do echo.ren "%%a" "%%~na%date:~0,4%%date:~5,2%%date:~8,2%.zip" >> renfile.bat
call renfile.bat

再求助:请问:
1、能否用修改日期或是用创建日期排除以前的。只更名某某修改日期或是某某创建日期以后的(某某修改日期或创建日期以后的文件+当前日期)
2、能否排除已带有日期的文件,只更名不带日期的文件(不带日期的文件+当前日期)

[ Last edited by lqs623 on 2010-5-23 at 09:14 ]

2010-5-23 07:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lqs623
贫困用户





积分 -3
发帖 30
注册 2007-8-13
状态 离线
『第 9 楼』:  



  Quote:
Originally posted by Hanyeguxing at  01:05 PM:

这个代码不是执行的,是先用来测试的,看到显示正确后,去掉echo.正式执行就可以。之所以这样写,是因为该代码我未测试。
[code]for %%a in (*.zip) d ...

我这确实不行请您实际操作一下
下面是我用您的两个批处理的操作情况:
1、Hanyeguxing11.bat:
@echo off
set a=%date:~0,4%%date:~5,2%%date:~8,2%
for %%a in (*.zip) do ren "%%a" "%%~na%a%.zip"

2、Hanyeguxing22.bat:
for %%a in (*.zip) do ren "%%a" "%%~na%date:~0,4%%date:~5,2%%date:~8,2%.zip"

更名前文件夹目录树为:
文件夹 PATH 列表
卷序列号码为 71F2E346 1CBB:7D24
C:\BT1\新建文件夹
    showtim11.zip
    showtim.zip
    showtime.zip
    vcccccccc.zip
    复件 新建 文本文档.zip
    新建 文本文档.zip
    gghhhh.zip
    Hanyeguxing11.bat
    Hanyeguxing22.bat
   
没有子文件夹

用Hanyeguxing11.bat:更名后文件夹目录树为:
文件夹 PATH 列表
卷序列号码为 71F2E346 1CBB:7D24
C:\BT1\新建文件夹
    showtime20100523.zip
    新建 文本文档20100523.zip
    复件 新建 文本文档20100523.zip
    showtim2010052320100523.zip
    vcccccccc2010052320100523.zip
    gghhhh2010052320100523.zip
    showtim11201005232010052320100523.zip
    Hanyeguxing11.bat
    Hanyeguxing22.bat
   
没有子文件夹
   
用Hanyeguxing22.bat:更名后文件夹目录树为:
文件夹 PATH 列表
卷序列号码为 71F2E346 1CBB:7D24
C:\BT1\新建文件夹
    新建 文本文档20100523.zip
    复件 新建 文本文档20100523.zip
    showtim1120100523.zip
    vcccccccc2010052320100523.zip
    showtim2010052320100523.zip
    gghhhh2010052320100523.zip
    showtime201005232010052320100523.zip
    Hanyeguxing11.bat
    Hanyeguxing22.bat
   
没有子文件夹

2010-5-23 08:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lqs623
贫困用户





积分 -3
发帖 30
注册 2007-8-13
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by Hanyeguxing at  01:05 PM:

这个代码不是执行的,是先用来测试的,看到显示正确后,去掉echo.正式执行就可以。之所以这样写,是因为该代码我未测试。
[code]for %%a in (*.zip) d ...

再求助:请问:
1、能否用修改日期或是用创建日期排除以前的。只更名某某修改日期或是某某创建日期以后的(某某修改日期或创建日期以后的文件+当前日期)
2、能否排除已带有日期的文件,只更名不带日期的文件(不带日期的文件+当前日期)

[ Last edited by lqs623 on 2010-5-23 at 09:13 ]

2010-5-23 08:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: