中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 18:41
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 哪位朋友帮我优化一下这个批处理 查看 734 回复 4
楼 主 哪位朋友帮我优化一下这个批处理 发表于 2008-09-10 10:43 ·  中国 浙江 绍兴 电信
初级用户
积分 29
发帖 13
注册 2008-05-26 22:44
18年会员
UID 119783
性别 男
状态 离线
哪位朋友帮我优化一下这个批处理,尽量精简点。

d:
cd\

if exist CYG*.exb (if not exist C_CYG md C_CYG)
if exist CYG*.exb MOVE CYG*.exb C_CYG
if exist C_CYG\CYG*.exb (if not exist C_CYG\CYG_%date:~0,4% md C_CYG\CYG_%date:~0,4%)
if exist C_CYG\CYG*.exb MOVE C_CYG\CYG*.exb C_CYG\CYG_%date:~0,4%

说明:1、d:\c_cyg 这个文件夹可能存在也可能不存在。
2、d:\c_cyg\cyg2008 这个文件夹可能存在也可能不存在。
3、d:\cyg*.exb 这批文件可能存在也可能不存在。
42、d:\c_cyg\cyg2008\cyg*.exb 这批文件可能存在也可能不存在。
2 发表于 2008-09-10 10:49 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
cd /d d:\
if exist CYG*.exb (
md C_CYG 2>nul
MOVE CYG*.exb C_CYG 2
)
if exist C_CYG\CYG*.exb (
md C_CYG\CYG_%date:~0,4% 2>nul
MOVE C_CYG\CYG*.exb C_CYG\CYG_%date:~0,4%
)
3 发表于 2008-09-10 13:13 ·  中国 浙江 绍兴 电信
初级用户
积分 29
发帖 13
注册 2008-05-26 22:44
18年会员
UID 119783
性别 男
状态 离线
首先在此感谢HAT,但优化后的批处理无法实现原来的功能。
运行你的批处理后,只在D盘根目录下建立了C_cyg这个文件夹,没有实现MOVE的功能。

[ Last edited by yy2118370 on 2008-9-10 at 01:37 PM ]
4 发表于 2008-09-10 13:36 ·  中国 广东 汕头 潮阳区 电信
高级用户
★★★
DOS时空
积分 713
发帖 348
注册 2007-02-10 13:59
19年会员
UID 79169
性别 男
状态 离线
cd /d d:\
if exist CYG*.exb (
md C_CYG 2>nul
MOVE CYG*.exb C_CYG 2>nul
)
if exist C_CYG\CYG*.exb (
md C_CYG\CYG_%date:~0,4% 2>nul
MOVE C_CYG\CYG*.exb C_CYG\CYG_%date:~0,4%
)

[ Last edited by haiou327 on 2008-9-10 at 01:39 PM ]
5 发表于 2008-09-10 14:59 ·  中国 浙江 绍兴 电信
初级用户
积分 29
发帖 13
注册 2008-05-26 22:44
18年会员
UID 119783
性别 男
状态 离线
先感谢楼上的两位,对本本例而言,楼上的程序好像通过了。

但已经检测到楼上的程序还有一点问题,原因正在查找中。
测试方法,重复 执行楼上的程序,但每次把 C_CYG 字符替换成其它的字符,发现创建了空的文件夹。


现在已经可以了,原因是在文件名中有空格。

[ Last edited by yy2118370 on 2008-9-10 at 03:27 PM ]
论坛跳转: