问题
上次使用Python看了 一波远程端口,这次我们使用Win上面的Batch脚本,在控制台上面观察一波指端端口的有效连接数。
batch
@echo off
:begin
echo netstat -ano | find ":80" | find "ESTABLISHED" /c
ping 127.0.0.1 -n 2 > nul
goto begin
说明一下: echo netstat -ano | find ":80" | find "ESTABLISHED" /c
就是查询80端口的有效连接数,其实就看有多少人在使用我们服务,例如你自己Tomcat的web服务使用的80端口,看有多少正在使用;这里使用了win的管道方式对find
进行多次条件筛选。 ping 127.0.0.1 -n 2 > nul
这一行的目的是避免死循环造成cpu使用率飚得太高,其实这里巧妙利用ping命令在2次执行期间,会主动休眠1秒的特点,来做线程休眠;> nul
是为了抑制输出到控制台。
最终效果
感受
简单的观察在控制台观察win的状态还是可以使用batch脚本来完成的,但是,涉及到生成日志文件,还是用人生苦短的python来完成吧(batch的日期要截取字符串,而且不同版本截图位置还不同,算了,我放弃)!以后有机会,我再弄一个python生成日志文件版本。
参考: 批处理 How to create an infinite loop in Windows batch file? How To Create Batch File With Endless For Loop On Windows 7? How to sleep for 5 seconds in Windows's Command Prompt? (or DOS) [duplicate]