免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4620 | 回复: 6
打印 上一主题 下一主题

[Server 2003] windows batch报错 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-04-01 09:06 |只看该作者 |倒序浏览
客户需求:
每天检查某个路径,删除文件小于1K而且文件名中日期部分为当天日期。

我写了一个脚本,但是始终运行有错。请大家帮忙看看。

FOR %%F IN (*.txt) DO (

set fname=%%~nF

set fdate=%fname:~0,8%

set today=%date:~10,4%%date:~7,2%%date:~4,2%

echo %fname%

echo %fdate%

echo %today%

IF %%~zF LSS 1 IF %today% EQU %fdate%

(del %%F)

)

论坛徽章:
0
2 [报告]
发表于 2014-04-01 10:38 |只看该作者
客户催得比较急,请大家帮忙看看。谢谢

论坛徽章:
0
3 [报告]
发表于 2014-04-02 04:46 |只看该作者
请教各位一般写Windows batch用什么调试工具。cmd给出的提示信息太少。

论坛徽章:
1
未羊
日期:2014-06-16 09:14:34
4 [报告]
发表于 2014-04-02 14:08 |只看该作者
本帖最后由 jimmy14k 于 2014-04-02 14:38 编辑

IF %%~zF LSS 1 IF %today% EQU %fdate%

(del %%F)

感觉这个有问题

IF %%~zF LSS 1
(IF %today% EQU %fdate%

(del %%F))

改成这样试试

其它目测变量赋值没有错,因为是win7,date取值和win 2k3不一样,没法帮你准确测试,如果你觉得功能部分没问题,那就是if这样写嵌套有错误

论坛徽章:
0
5 [报告]
发表于 2014-04-03 11:32 |只看该作者
谢谢回复,我再试试.

论坛徽章:
0
6 [报告]
发表于 2014-04-03 11:32 |只看该作者
谢谢回复,我再试试.

论坛徽章:
0
7 [报告]
发表于 2014-04-03 11:35 |只看该作者
我做了修改:
cd test
FOR %%F IN (*.txt) DO (
        set fname=%%~nF
        set fdate=%fname:~0,8%
        set today=%date:~10,4%%date:~7,2%%date:~4,2%
        echo %fname%
        echo %fdate%
        echo %today%
        IF %%~zF LSS 1024
         (IF %today% EQU %fdate%
                (del %%F))
        )
cd ..

结果运行报错:
D:\Program>cd test
The syntax of the command is incorrect.

D:\Program\test>        IF %~zF LSS 1024
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP