本帖最后由 咒夜坠 于 2014-2-14 11:17 编辑
- @echo off&setlocal enabledelayedexpansion
- set /p sc=请输入要监看的端口
- set ss=ESTABLISHED
- for /f "eol=: tokens=1,2,3,4" %%i in ('netstat -an^|find "%sc%"') do (
- if %ss% EQU %%l (
- echo %%i %%j %%k %%l %date% %time% >>log.txt
- ) ELSE (
- ECHO 无连接
- )
- ) echo %%i %%j %%k %%l
复制代码 判断某端口是否连接 连接就输出到文本log
代码二
下面这个代码是我改良后的
但是最后还是会提示
'TCP' 不是内部或外部命令,也不是可运行的程序
或批处理文件。- echo off&setlocal enabledelayedexpansion
- ::批处理文件 请将文件名改成.bat后缀
- set /p sc=请输入要监看的端口
- for /f "delims=" %%a in ('netstat -an^|find "ESTABLISHED"') do echo %%a
- for /f "eol=: tokens=1,2,3,4" %%i in ('netstat -an^|find "ESTABLISHED"') do (
- set ss=%%i %%j %%k %%l
- echo %ss%|find "%sc%"
- )
- pause
复制代码 代码三 功能完善 使用转换软件就可以不显示窗口了- echo off&setlocal enabledelayedexpansion
- ::批处理文件 请将文件名改成.bat后缀
- set /p sc=请输入要监看的端口
- :dk
- for /f "eol=: tokens=1,2,3,4" %%i in ('netstat -an^|find "ESTABLISHED"') do (
- echo %date% %time% %%i %%j %%k %%l|find "%sc%">>log.txt
- )
- ping 127.1>nul
- goto dk
复制代码
|