中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]请帮助我分析这段代码?
作者:
标题: [求助]请帮助我分析这段代码? 上一主题 | 下一主题
tempuser
高级用户





积分 547
发帖 261
注册 2006-4-15
状态 离线
『楼 主』:  [求助]请帮助我分析这段代码?

在网上看到,这是限制使用次数的代码
@echo off
echo echo 000>>test1.txt
attrib test1.txt +s +h
type test1.txt | find /c /n "000">>test2.txt
attrib test2.txt +s +h
FOR /f "delims=" %%i in ('find  test2.txt "5"') do (set no=%%i)
if "%no%" == "5" del %0&&exit
pause

我的问题是以下行该怎么理解:
FOR /f "delims=" %%i in ('find test2.txt "5"') do (set no=%%i)
是从test2.txt中查找字符串5吗?那么把什么值赋给i呢?
我在该命令行下面加个
echo %no%,为什么总是显示--------test2.txt呢?下面是我的修改代码,到是能限制使用次数,但对于变量的赋值是如何变化的,还是很糊度!
@echo off
echo 限制使用次数为5
:loop
set /a var+=1
echo %var%
pause
echo echo 000>>test1.txt
attrib test1.txt +s +h
type test1.txt | find /c /n "000">>test2.txt
attrib test2.txt +s +h
FOR /f "delims=" %%i in ('find test2.txt "5"') do (set no=%%i)
echo %no%
::最初认为是在test2.txt中查数字5,其实这么理解是错误的!
if "%no%" == "5" del %0
goto loop
pause

2007-12-13 09:17
查看资料  发短消息 网志   编辑帖子  回复  引用回复
tempuser
高级用户





积分 547
发帖 261
注册 2006-4-15
状态 离线
『第 2 楼』:  

echo %no%为什么不是
1
2
3
4
5
这样的呢?

2007-12-13 09:19
查看资料  发短消息 网志   编辑帖子  回复  引用回复
huahua0919
银牌会员




积分 1608
发帖 780
注册 2007-10-7
状态 离线
『第 3 楼』:  

'find test2.txt "5"'
find 命令中,我没见过这种用法,还望高手指点!

2007-12-13 11:06
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 4 楼』:  

find "5" "test2.txt" find  test2.txt "5" 哈哈 似乎一样用啊

[ Last edited by terse on 2007-12-13 at 11:31 AM ]



简单!简单!再简单!
2007-12-13 11:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
huahua0919
银牌会员




积分 1608
发帖 780
注册 2007-10-7
状态 离线
『第 5 楼』:  

楼上的我知道,但是在find文档里面并没有这样的说法,但是楼主的也可以执行,费解~

2007-12-13 11:31
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 6 楼』:  

find "5" "test2.txt"  文件名可以用“”
find  test2.txt "5"  中文件名不可以用“” 文件名有空格就不能处理



简单!简单!再简单!
2007-12-13 11:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: