中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 写的一个脚本总是报错,不知道如何修改了
作者:
标题: 写的一个脚本总是报错,不知道如何修改了 上一主题 | 下一主题
xue0808
初级用户





积分 108
发帖 56
注册 2007-5-7
状态 离线
『楼 主』:  写的一个脚本总是报错,不知道如何修改了

for /f "tokens=1,2 delims=:." %a in ( "%time%" ) do (set /a d=100%%b%%100-10 )

del /s /q /f %temp%\%b%*.tmp

echo %time:~3,1% |find "1" && del /s /q /f %temp%\5*.tmp

for /f "tokens=1,2 delims=:." %a in ( "%time%") do (set /a u=100%b%100-1 )

dir /s /b %temp% >%temp%\list.txt


提示错误:
第一句就有错,用的是xp sp2
c:\>test.bat
此时不应有 time00-10。

谢谢

2010-4-12 16:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


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

批处理脚本?.bat文件?

{%variable|%%variable}
必需。代表可替换的参数。使用 %variable 通过命令提示符执行 for 命令。使用 %%variable 在批处理文件中执行 for 命令。变量要区分大小写,并且必须用 Alpha 值表示,例如,%A、%B 或 %C。
引自:C:\WINDOWS\Help\NTCmds.chm::/for.htm

例如,在批处理中要这样写:
for %%a in (*) do echo.%%a
在命令行窗口内才使用:
for %a in (*) do echo.%a

[ Last edited by Hanyeguxing on 2010-4-12 at 16:35 ]



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





积分 108
发帖 56
注册 2007-5-7
状态 离线
『第 3 楼』:  

thx,试下先

[ Last edited by xue0808 on 2010-4-12 at 16:39 ]

2010-4-12 16:36
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xue0808
初级用户





积分 108
发帖 56
注册 2007-5-7
状态 离线
『第 4 楼』:  

谢谢很好用

2010-4-12 16:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


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



  Quote:
Originally posted by xue0808 at 2010-4-12 16:26:
for /f "tokens=1,2 delims=:." %a in ( "%time%" ) do (set /a d=100%%b%%100-10 )
del /s /q /f %temp%\%b%*.tmp
echo %time:~3,1% |find "1" && del /s /q /f %temp%\5*.tmp
for /f "tokens=1,2 delims=:." %a in ( "%time%") do (set /a u=100%b%100-1 )
dir /s /b %temp% >%temp%\list.txt
提示错误:
第一句就有错,用的是xp sp2
c:\>test.bat
此时不应有 time00-10。
谢谢

for /f "tokens=1,2 delims=:." %a in ( "%time%" ) do (set /a d=100%%b%%100-10 )
%a写成%%a,set /a d=100%%b%%100-10???
del /s /q /f %temp%\%b%*.tmp
%b%哪来的?
echo %time:~3,1% |find "1" && del /s /q /f %temp%\5*.tmp
for /f "tokens=1,2 delims=:." %a in ( "%time%") do (set /a u=100%b%100-1 )
%%a 写成%%a,set /a u=100%b%100-1 ???
dir /s /b %temp% >%temp%\list.txt


你要写这个批处理是干什么用的呢?



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





积分 108
发帖 56
注册 2007-5-7
状态 离线
『第 6 楼』:  

%b%哪来的?         是当前的分钟

set /a d=100%%b%%100-10???   是当前的时间有前10分钟

2010-4-12 17:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xue0808
初级用户





积分 108
发帖 56
注册 2007-5-7
状态 离线
『第 7 楼』:  

这些句子都是在坛里找的

2010-4-12 17:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 8 楼』:  Re 6 楼

当前系统时间是晚上7点04分,你减一个10分钟出来看看?



2010-4-12 19:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
xue0808
初级用户





积分 108
发帖 56
注册 2007-5-7
状态 离线
『第 9 楼』:  



  Quote:
Originally posted by HAT at 2010-4-12 19:21:
当前系统时间是晚上7点04分,你减一个10分钟出来看看?

得出的负数,可以用60再修改???

用什么来识别是负数呢???

[ Last edited by xue0808 on 2010-4-15 at 14:43 ]

2010-4-15 14:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 10 楼』:  Re 9 楼

如果是2011年1月1日凌晨0点01分呢?你准备如何计算?



2010-4-15 18:22
查看资料  发短消息 网志   编辑帖子  回复  引用回复
xue0808
初级用户





积分 108
发帖 56
注册 2007-5-7
状态 离线
『第 11 楼』:  

我的文件名都是以当前分钟开头的

2010-4-16 09:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: