[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] 批处理怎样监控网络流量并自动关机?

本帖最后由 ygqiang 于 2011-10-7 00:13 编辑

xp系统下,晚上  用迅雷下载高清视频,一开始有200KB/S的下载速度,有的时候,就突然没有速度了。(是通过web页面拨号上网的,如果断线,会自动重新拨号,这个时候,在30分钟以内,会重新拨号多次)

如果30分钟以后,仍然无法拨号成功(不能上网),就自动关机


2011-9-28最新需求如下:

开机,自动启动并监视迅雷,如果迅雷没有运行,则一直监视

如果迅雷已经运行了,则如果20分钟之内网络流量<20k(还要考虑遇到无法拨号成功的情况),就自动关机。


看33楼代码。


33楼vbs代码出现新问题。
这个vbs代码,正常情况下,如果检测到运行迅雷,在2分钟内,如果流量《20k,才会自动关机。

问题就是:运行迅雷(不下载),即使开qq  看在线视频,还会在2分钟内自动关机。
运行迅雷(不下载),一直开qq  看在线视频,在2分钟内,流量应该》20k,应该不会自动关机啊?

顶下,多谢各位啊。

TOP

用批处理来监控迅雷的下载流量恐怕做不到...

TOP

真是无所不能的批处理

TOP

4# Demon


冷嘲热讽很有意思吗?

TOP

4# Demon


冷嘲热讽很有意思吗?
zm900612 发表于 2011-7-6 11:18

在很多人看来,批处理是无所不能的,所以才会问这种问题

TOP

6# Demon


哦,那我误会你了...刚刚鸡冻了哈,sorry
确实很多人把批处理的功能无限放大、看得太神秘,不过这也没办法呀,人家就是不会才来求助的嘛,要是对批处理的足够非常透彻,也就基本上能够自给自足了的。

TOP

我记得是可以的,流量虽然监测不出来,但是可以监测到数据量,然后对比时间,可以知道大概速度。
检测数据流量命令: netstat -e
1

评分人数

TOP

另外,“性能日志与警报”里面,可以监测“网络速度”,低于一定程度,可以自动执行命令。

TOP

9# caruko


学习了...
不过 win7 下我一直搞不懂如何在“性能日志与警报”面板中设置触发任务,能否请知情人指点一下呢?
另外是否能够用批处理来操作“性能日志与警报”呢?

TOP

10# zm900612


批处理只能开启&停止 已经存在的“ 性能日志与警报” 项目。

警报默认只会在日志里面写入日志,要执行脚本,需要自己更改。
1

评分人数

TOP

都说的我不懂。最主要是没弄过。要是自己弄过就能明白的多了

TOP

本帖最后由 caruko 于 2011-7-7 08:32 编辑

试试这个脚本吧,主要为了防止数值溢出,所以直接去掉后3位,而不是/1024
  1. @echo off &setlocal ENABLEDELAYEDEXPANSION
  2. for /f "tokens=2" %%i in ('netstat -e ^|findstr "Bytes"') do (
  3.          set "kb=%%i"
  4.          set "kb=!kb:~0,-3!"
  5. )
  6. for /f "tokens=2,4,6,8" %%a in ('systeminfo ^|findstr "启动时间"') do (
  7.          set /a stime=( ( %%a*24 + %%b ) * 60 + %%c ) *60 + %%d
  8. )
  9. :loop
  10. ping -n 3000 127.1>nul
  11. for /f "tokens=2" %%i in ('netstat -e ^|findstr "Bytes"') do (
  12.          set "newkb=%%i"
  13.          set "newkb=!newkb:~0,-3!"
  14. )
  15. for /f "tokens=2,4,6,8" %%a in ('systeminfo ^|findstr "启动时间"') do (
  16.          set /a etime=( ( %%a*24 + %%b ) * 60 + %%c ) *60 + %%d
  17. )
  18. set /a ll= ( newkb-kb ) / ( etime - stime )
  19. if !ll! lss 20 (
  20.             shutdown -s -t 5
  21.             exit
  22. ) else (
  23.     set /a kb=newkb,stime=etime
  24.     goto :loop
  25. )
复制代码

TOP

13# caruko


systeminfo 太慢了,建议用 wmic os 或者 net user %username%,而且没必要循环获取启动时间吧,那个太耗时了...而且通过启动时间到当前的时差来计算平均速度并非即时的,一旦开机久了就不准了,而且假如在开机之后久不联网,就产生误判了...

TOP

顶下,期待高手来解决啊。

TOP

返回列表