Board logo

标题: [已结]迅闪更新辅助P处理 [打印本页]

作者: pengpangxiong     时间: 2009-1-15 16:21    标题: [已结]迅闪更新辅助P处理


@echo off
setlocal enabledelayedexpansion
for /f "tokens=3" %%i in ('dir d:^|findstr /e 可用字节') do set num=%%i

for /f "delims=," %%a in ("!num!") do (
set dnum=%%a
)

if /i !dnum! geq 3 exit

:deld

echo.
echo D盘空间不足^^^!^^^-^^ 未更新的游戏可能无法运行
echo.
echo 手动删除按 S
echo 自动删除按 z
echo.
echo 注:自动删除是D盘全盘文件删除,速度较慢.
echo.

set /p mode=请输入删除模式:
if /I %mode%==s goto :modes
if /I %mode%==z goto :modez

:modes
setlocal enabledelayedexpansion

echo 本机已经安装游戏:
echo .
echo .

for /f "tokens=4" %%i in ('dir /ad d:\game\netgame ^| findstr /i "<dir>"') do (
set /a a+=1
set /a b+=1
if /i !a! gtr 2 set !b!dirgame=%%i&set dirgame=%%i
echo !b! : !dirgame!
)

echo.
echo.

set /p delgame=请输入你想删除的游戏编号,以空格分开,然后回车:
echo 正在删除中,请稍候............

for %%i in (!delgame!) do rd /s/q d:\game\netgame\!%%idirgame!
echo.
echo.
echo 操作成功,按任意健退出
echo.

pause
exit

:modez
echo.清理当中,请稍后.........
for /f "tokens=4" %%i in ('dir /ad d:\game\netgame ^| findstr /i "<dir>"') do rd /s/q d:\game\netgame\%%i

echo.
echo.
echo 清理完成

pause
exit
::
运行了,可以.但是还有很多不完善的地方.

1.精确度太不行了,我查了好久,好像没有哪个DOS命令可以查找到可用空间多少MB.查找到的都是字节,但是好像DOS支持的数值有限.
比如说  " 29,475,979,264 可用字节 "  set /a a=29475979264不行.

2. ECHO输的我烦死了,有谁知道用一个ECHO命令就输出多行么?

3,效率太低.删除一个目录要老半天,DOS里哪个命令删除东西最快?或者是工具
走过路过,知道解决办法的朋友,有时间的话,麻烦指点指点.

[ Last edited by HAT on 2009-1-17 at 21:13 ]
作者: yishanju     时间: 2009-1-16 14:39
需要高精度计算,可以考虑用 BC 这个命令行工具
,-_- 号称任意精度计算语言。

在批处理中调用VBS来做计算,好像也是一种办法,

http://home.ustc.edu.cn/~baj/ebook/abs/mathc.html
作者: yishanju     时间: 2009-1-16 14:40
SCO基本命令之数学计算命令
  
  [语法]: bc [-c] [-l] [文件...]  
  [说明]: bc是一个交互式的高精度计算工具,采用类似于C语言的语法,能够从指定文件中读出命令执行,然后再进入交互式执行,事实上,bc是dc的预编译器,它自动激活dc,将语句经预编译后传递给dc,退出bc的命令是quit,bc中的ibase,obase,scale分别表示输入基数,输出基数,小数点右边的位数。  
    -c bc 只编译,而不将编译结果送dc,将其送到标准输出上  
    -l 预定义一个数学函数库,可在bc中使用以下函数  
    s(x) sine  
    c(x) cosine  
    e(x) exponential  
    l(x) log  
    a(x) arctangent  
    j(n,x) Bessel  
  [例子]:  
    bc -l 进入bc  
    scale=10 将小数位定为10位  
    e(1) 计算e的小数点后10位  
    quit 退出bc
作者: yishanju     时间: 2009-1-16 14:42
数学计算命令BC 用法说明举例:http://home.ustc.edu.cn/~baj/ebook/abs/mathc.html

WIN32版BC 下载:
http://gnuwin32.sourceforge.net/packages/bc.htm
作者: pengpangxiong     时间: 2009-1-17 21:12    标题: 谢拉

真心的说声谢谢,我网吧迅闪还是用的2007的.它自动删除多余游戏的功能老是卡在那里不动,一天会有好几次叫网管都是因为这事.于是想到了批处理^-^.
作者: yishanju     时间: 2009-1-18 14:35
再贴一个,从合集上看到的
cmd计算软件:math.exe 
http://www.cn-dos.net/forum/view ... &highlight=math
作者: yishanju     时间: 2009-1-18 15:43
求所有分区剩余空间的精确值(以MB为单位):
http://www.cn-dos.net/forum/viewthread.php?tid=28361

如何显示磁盘的剩余空间?

http://www.cn-dos.net/forum/view ... ghlight=&page=1