中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-24 14:56
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,274 会员排行
DOS批处理 & 脚本技术(批处理室) » 求教:如何显示一个文本内的随机行?
可打印版本  2,410 / 20
第16楼 namejm 发表于 2007-02-03 04:59
荣誉版主 发帖 1,737 积分 5,226 来自 成都
  6楼的代码可以实现这个功能,只不过是以引号来表示空行的。如果要显示真正的空行的话,echo语句加个判断就行了。
第17楼 theoldman 发表于 2007-02-03 05:44
初级用户 发帖 16 积分 39
楼上各位真热心^_^

逐楼学习中!!
第18楼 theoldman 发表于 2007-02-03 05:53
初级用户 发帖 16 积分 39
关于2楼的代码由于水平有限实在看的不是很明白,谁能否帮忙解释一下呢?
@ECHO %DBG% OFF
SETLOCAL ENABLEDELAYEDEXPANSION--这句具体的作用是什么呢?帮助里说的很晦涩,实在看的不是很明白

FOR /F "TOKENS=*--这里用*是什么作用呢--" %%i IN (TEST.TXT) DO (SET /A h+=1 & SET r!h!=%%i)--r!h!是什么意思呢?--
SET /A s=%RANDOM%%%%h%+1--这句的%很多,没分明白:(也请仔细解释一下--
ECHO !r%s%!

[ Last edited by theoldman on 2007-2-2 at 05:19 PM ]
第19楼 theoldman 发表于 2007-02-03 06:11
初级用户 发帖 16 积分 39
在论坛搜索了一下
FOR /F "TOKENS=*--这里用*是什么作用呢--" 这个是查找所有列吧?此处如果不用这个参数可以么?
第20楼 anqing 发表于 2007-02-03 12:36
高级用户 发帖 413 积分 859
@ECHO %DBG% OFF
SETLOCAL ENABLEDELAYEDEXPANSION

FOR /F "TOKENS=*" %%i IN (TEST.TXT) DO (SET /A h+=1 & SET r!h!=%%i)
SET /A s=%RANDOM%%%%h%+1
ECHO !r%s%!
这个p中,加r的意思是什么呀?
SET /A s=%RANDOM%%%%h%+1这一行看着点晕、??

[ Last edited by anqing on 2007-2-3 at 12:39 PM ]
第21楼 jmz573515 发表于 2007-02-10 00:51
银牌会员 发帖 464 积分 1,212
灌水
上一页  1 2
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023