中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 11:25
48,039 主题排行 / 350,124 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 求助 关于随机生成一个文件列表
可打印版本  895 / 8
第1楼 rrrrfcu3 发表于 2007-11-06 23:44
新手上路 发帖 5 积分 12
求助 关于随机生成一个文件列表
从原来来路径的文件列表中随机选取几个成一个新列表
例如:\gequ\angela06-01.wma
D:\gequ\yinxingdcb.wma
D:\gequ\rgaxq.mp3
D:\gequ\316515760.mp3
D:\gequ\tl.mp3
D:\gequ\OIkRHUbe.mp3
D:\gequ\bengpao.mp3
D:\gequ\20061017151241308.mp3
D:\gequ\love.mp3
D:\gequ\qiutian.mp3
D:\gequ\28.mp3
我要从中随机选取3个到新列表

原来我想从数序中随机选取几个数字,然后给数字赋值,可是我却不能用来替换数傎
@echo off
set 1=D:\gequ\zuichudemengxiang.mp3
echo %1%>>1.txt
pause

请问如何解决?
第2楼 zh159 发表于 2007-11-07 01:09
金牌会员 发帖 1,467 积分 3,687
N久前就有讨论过
http://www.cn-dos.net/forum/viewthread.php?tid=22128

这是我的一段
第3楼 rrrrfcu3 发表于 2007-11-07 07:38
新手上路 发帖 5 积分 12
昨天晚上我翻了以前的帖子,以前的只是随机生成一个播放列表,达到随机播放的目的,而我的要求只随机选取部分到新列表,再有,我这得加上路径
第4楼 zh159 发表于 2007-11-07 11:41
金牌会员 发帖 1,467 积分 3,687
根据这个改一下


[ Last edited by zh159 on 2007-11-7 at 11:42 AM ]
第5楼 rrrrfcu3 发表于 2007-11-07 12:35
新手上路 发帖 5 积分 12
我的思路是通过数字生成随机数五个
@echo off
:start
cls
set Num=
set Tmp$=

:loop
set /a randomloop=%random%%%99+1
for %%n in (%Tmp$%) do if "%randomloop%" == "%%n" goto loop
call set Tmp$=%%Tmp$%% %randomloop%
set /a Num+=1
set random_%Num%=%randomloop%
if %Num% LSS 5 goto loop

for /l %%n in (1,1,%Num%) do call set /p= %%random_%%n%%<nul
echo.>>A.txt
pause
goto start
exit

我再定义每个带路径的文件名为1~99如何把A.txt中随机生机的5个数字替换成我事先定义的带路径的文件名呢?

例如我定义 1=D:\gequ\zuichudemengxiang.mp3
2=D:\gequ\school.mp3
3=D:\gequ\lige.wma
4=D:\gequ\angela06-01.wma
5=D:\gequ\yinxingdcb.wma
6=D:\gequ\rgaxq.mp3
7=D:\gequ\316515760.mp3
8=D:\gequ\tl.mp3
......
再通过随机生成的5 7 9 8 1 换成相应的带路径的文件名
请高手指教
第6楼 zh159 发表于 2007-11-07 12:44
金牌会员 发帖 1,467 积分 3,687
第7楼 everest79 发表于 2007-11-07 20:05
金牌会员 发帖 1,127 积分 2,564
参考楼上的我也写了个

第8楼 rrrrfcu3 发表于 2007-11-13 19:58
新手上路 发帖 5 积分 12
谢谢大家的帮助,7楼的测试之后好像会有重复的毛病
第9楼 r0gue 发表于 2007-11-13 23:29
新手上路 发帖 4 积分 7
测试了一下 的确有点小毛病的
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023