几个批处理的实例
1、测试端口
@echo off title 测试端口 echo. :loop ;netstat -an |findstr 3389 ping 127.1 -n 5 > nul echo. echo. echo. echo 每五秒钟测试一次 goto :loop
2、测试进程
@echo off title 测试进程 echo. :run tasklist | find /i "Clsmn.exe" || goto do ::没有发现进程就转向do ping 127.0.0.1 -n 3 >nul goto run :do start "" "C:\WINDOWS\system32\Clsmn.exe"
3、每隔5秒钟检测一次进程及其端口
@echo off title 测试进程及其端口 :run echo 每隔5秒钟打印一次 echo %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2% %TIME:~0,2%:%TIME:~3,2%:%TIME:~6,2% >>a.log for /f "tokens=2" %%p in ('tasklist /fi "IMAGENAME eq Xshell.exe" /nh') do (netstat -oan | find "%%p") >> a.log ping 127.0.0.1 -n 5 >nul goto run pause
4、只打印错误的日志
@echo off title 测试端口 echo. :run netstat -nb | findstr /l "rysnc.exe 1029" || goto do ping 127.0.0.1 -n 5 >nul goto run :do echo 检测不到1029端口 >d:\err.log goto run
将脚本丢到后台执行
用VBS调用
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c D:\share.bat",vbhide
把这代码另存为.vbs,修改下.bat路径调用就行
转载于:https://blog.51cto.com/alwaysyunwei/1252014