中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请问如何把N多个文件按照其生成日期建文件并move进去
作者:
标题: 请问如何把N多个文件按照其生成日期建文件并move进去 取消高亮 | 上一主题 | 下一主题
oozic
初级用户





积分 35
发帖 25
注册 2007-11-28
状态 离线
『楼 主』:  请问如何把N多个文件按照其生成日期建文件并move进去

请DX们给点思路。
现在我们LOG文件夹有很多log文件
文件名IMG#####.XXX
我想按照其文件的生成日期 在LOG文件夹下创建以文件生成日期命名的文件夹
比如说生成日期是2009-11-09 hh:mm:ss 我只要文件夹名是
2009-11-09就可以了。并把所有2009-11-09日期生成的文件全部move到 这个文件夹里去.

请问dos bat代码怎么操作 谢谢大家。

2009-11-9 11:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Evangel
初级用户





积分 145
发帖 95
注册 2008-4-12
状态 离线
『第 2 楼』:  

不知道满足要求否?
@echo off
setlocal enabledelayedexpansion

for /f "skip=5 tokens=1,4" %%a in ('dir /a-d') do (
set date_=%%a
set name_=%%b
if "!name_!"=="字节" goto out
if not exist !date_! md !date_!
move !name_! !date_!
)
:out


2009-11-9 14:59
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
oozic
初级用户





积分 35
发帖 25
注册 2007-11-28
状态 离线
『第 3 楼』:  

恩 可以的。
我想问下 怎么会多出来文件名是0 和 其他一个数字序号的文件夹?

2009-11-9 15:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Evangel
初级用户





积分 145
发帖 95
注册 2008-4-12
状态 离线
『第 4 楼』:  

是我的问题,我不知道如何处理dir列表后的出现的东西……或许有方法,期待答案……不过不影响使用

2009-11-9 16:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
oozic
初级用户





积分 35
发帖 25
注册 2007-11-28
状态 离线
『第 5 楼』:  

谢谢!楼上的
有更好方法的DX麻烦 跟贴!

2009-11-9 17:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ljy0715
新手上路





积分 3
发帖 2
注册 2007-12-11
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by Evangel at 2009-11-9 02:59 PM:
不知道满足要求否?
[code]
@echo off
setlocal enabledelayedexpansion

for /f "skip=5 tokens=1,4" %%a in ('dir /a-d') do (
set date_=%%a
set name_=%%b
if "!name_!&quo ...

按照2楼的方法确实可以实现,至于出现了一些序号的文件夹,估计是你把批处理放到了日志文件同目录了,造成批处理在运行中把批处理文件本身也移进去而出错。批处理做在其它地方,再用CD/D转移回来即可(如CD/D  D:\LOG\)。我试验了未发现异常

[ Last edited by ljy0715 on 2009-11-10 at 20:59 ]

2009-11-10 20:50
查看资料  发短消息 网志   编辑帖子  回复  引用回复
oozic
初级用户





积分 35
发帖 25
注册 2007-11-28
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by ljy0715 at 2009-11-10 08:50 PM:



按照2楼的方法确实可以实现,至于出现了一些序号的文件夹,估计是你把批处理放到了日志文件同目录了,造成批处理在运行中把批处理文件本身 ...

对 是放在同目录了。
请DX示范下 怎么在不同目录里运行可以不。

假设我把这段dos bat代码放在d:盘
我现在要去分d:\log下的日志文件。

2009-11-11 22:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: