中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 09:14
48,039 主题排行 / 350,124 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 郁闷:每次总是碰到这个错误
可打印版本  573 / 6
第1楼 biwier 发表于 2007-11-05 11:12
初级用户 发帖 34 积分 98
郁闷:每次总是碰到这个错误
当我 写
if %var% GTR 1000 (

) else (
)

类似这样的结构,经常会碰到 1000 was unexpected at this time..

每次都不知道自己怎么修改,就好了。。。

估计是文件保存格式的问题,或者就非法字符,,郁闷我的是英文操作系统,需要注意些什么问题吗?

我也确认了,实在英文输入法下输入的数字1000
第2楼 knoppix7 发表于 2007-11-05 11:20
银牌会员 发帖 634 积分 1,287 来自 cmd.exe
检查var在哪个时候是不是空值.
第3楼 lotus516 发表于 2007-11-05 11:23
高级用户 发帖 246 积分 551
你要把全部代码放出来!
第4楼 biwier 发表于 2007-11-05 13:22
初级用户 发帖 34 积分 98
@echo off
:loop
for /F %%i in ('dir /s /a:a-h F:\Ixcache\log') do set filesize=%%~zi
if %filesize%=="" sleep 300 &&goto loop

if %filesize% GTR 1000 (
del F:\p4cache\log
echo delete the log successfully
) else (
sleep 300
)
goto loop


我加了判断空的语句 ,现在又报sleep unexpected at the time...
我在命令行敲入 sleep是没问题的。。。
第5楼 abcd 发表于 2007-11-05 13:26
银牌会员 发帖 739 积分 1,436
if %filesize%==""

这里有错误

要么
if %filesize%==

要么

if "%filesize%"==""
第6楼 abcd 发表于 2007-11-05 13:29
银牌会员 发帖 739 积分 1,436
还有就是dir /a:a-h /s不加个/b的话

dir的结果第一例不是文件名哦
第7楼 biwier 发表于 2007-11-05 13:39
初级用户 发帖 34 积分 98
多谢:)
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023