![]() 支柱会员
|
=============================================
述求:有一个party,达到对到场人员,随机分组玩团队游戏的目的。。。 能够随意的输入姓名,输入完后,把随机分组排列的姓名显示在屏幕上 ============================================= 设姓名文本为name.txt,一个名字一行 分组规则为:4人一组 思路为:乱编号+编号排序=乱序,然后分组 随机空间大小为10的3次方,几十人的party应该够了吧 准备好name.txt,保存为xy.cmd运行,自定义修改红色部分 代码:
@echo off for /f "delims=" %%i in (name.txt) do ( setlocal ENABLEDELAYEDEXPANSION for /l %%a in (1,1,3) do ( echo %random% >nul set m=!m!!random:~-1! ) echo !m!!:%%i>>tmp.txt endlocal ) setlocal ENABLEDELAYEDEXPANSION set /a num=0 set /a linenum=0 for /f "delims=" %%i in (tmp.txt) do set /a linenum=!linenum!+1 for /f "tokens=1,2* delims=: " %%i in ('sort tmp.txt ^| findstr /n "."') do ( set n=%%k set m=!m! !n! set /a num=!num!+1 if !num!==4 ( echo !m!>>tmp1.txt set /a num=0 set m=) if "%%i"=="!linenum!" ( if "!m!" neq "" echo !m!>>tmp1.txt) ) endlocal findstr /n "." tmp1.txt>list.txt del tmp*.txt start list.txt 此帖于 2005-05-23 15:01:47 被 hitme 编辑. . |
||
![]() 支柱会员
|
修正了几个小问题,更新下
|
||
![]() 核心会员
|
|
||
![]() 支柱会员
|
引用:
代码:
findstr /m "!m%%i!!n%%i!" tmp.txt 2>nul >nul && goto :loop || ^ if !m%%i!!n%%i!==00 ( echo 30>>tmp.txt) else ( echo !m%%i!!n%%i!>>tmp.txt) 用cmd写,螺丝壳里做道场,憋的慌..要求高了,越改越不靠铺,呵呵 此帖于 2005-05-24 08:16:43 被 hitme 编辑. . |
|||
![]() 支柱会员
|
引用:
分别随机出[01-29]十位,和个位 00的不要 重复的不要 排序,转置 |
|||
![]() 热心会员
|
请教hitme另外一个脚本,功能是自动拨号,ping指定IP地址(参数1),小于指定ping值(参数2)就停止(拨号成功),大于的话挂断重拨,直到小于指定ping.有几步不会弄....需要的功能是:
引用:
|
|||
![]() 支柱会员
|
引用:
地址=bbs.et8.net 次数=3 ping值限=1000 比较对象=平均值 代码:
:loop rasphone -d 拨号 for /f "tokens=3 delims=," %%i in ('ping bbs.et8.net -n 3 ^| findstr "Average"') do ( setlocal ENABLEDELAYEDEXPANSION set n=%%i if !n:~11,-3! gtr 1000 (rasphone -h 拨号 (不成功就挂断) && goto :loop) endlocal ) 呵呵,挑起局端设备来了.. ![]() |
|||
![]() 支柱会员
|
我把以前写的cmd shell,rar打包了下,各处备了下,留了好几个copy
不曾想..今天发现... rar文件坏了,妈呀...太损了吧 算了算了,旧的不去,新的不来 |
||
![]() 热心会员
|
有点问题:
引用:
|
|||
![]() 支柱会员
|
引用:
改正 "%n:~11,-3%" gtr "1000" |
|||
![]() 热心会员
|
好像传递不了变量,你看看:
引用:
"都不行... 此帖于 2005-05-23 16:12:38 被 Punk 编辑. . |
|||
![]() 支柱会员
|
引用:
要这样用 set m=%n:~11,-3% echo !m! |
|||
![]() 热心会员
|
for /f "tokens=3 delims=," %%i in ('ping bbs.et8.net -n 3 ^| findstr "Average"') do (
setlocal ENABLEDELAYEDEXPANSION set n=%%i set m=%n:~11,-3% @echo !m! endlocal ) 输出空的... |
||
![]() 支柱会员
|
引用:
代码:
for /f "tokens=3 delims=," %%i in ('ping bbs.et8.net -n 3 ^| findstr "Average"') do ( setlocal ENABLEDELAYEDEXPANSION set n=%%i set m=!n:~11,-3! echo !m! endlocal ) |
|||
![]() 热心会员
|
是不是%%1那个变量值"Average = 8ms"含有等号有影响?
|
||