CODE: [Copy to clipboard]
@echo off
mode con cols=60 lines=25
title 查看本机在外网IP
echo.
set p138=0
:ptry
if %p138%==5 goto pfail
set /a p138=%p138%+1
echo 测试网络连接...
ping -n 1 www.ip138.com>nul
if errorlevel 1 (echo 网络连接失败!&goto ptry)
echo 网络连接成功!
if exist ip.ini del ip.ini
<"%~f0" more +40 >tmp.vbs
cscript //NoLogo /e:vbscript tmp.vbs %1>ip.ini
echo >nul && del tmp.vbs
echo 获取本机外网IP成功!
for /f %%i in (ip.ini) do set netip=%%i
if not exist iphistory.ini (set numhis=0&goto his)
for /f %%i in (iphistory.ini) do set num=%%i
set numhis=%num:~0,1%
set /a hiserror=%num:~0,2%+1 2>nul
if errorlevel 1 goto his
set numhis=%num:~0,2%
set /a hiserro2=%num:~0,3%+1 2>nul
if errorlevel 1 goto his
set numhis=%num:~0,3%
:his
set /a numhis=%numhis%+1
echo %numhis%. %date:~0,10% %time:~0,8% %netip% >>iphistory.ini
del ip.ini
echo 本机外网IP为:%netip%
set historyip=0
set /p historyip=查看历史IP记录(H):
if /i %historyip%==h type iphistory.ini|more
pause>nul&exit
:pfail
echo 网络连接五次不成功,按任意键退出!&pause>nul&exit
echo 文件(本机IP查看器.bat)安装完成!
goto:eof
set oDOM = WScript.GetObject("http://www.ip138.com/ip2city.asp")
do until oDOM.readyState = "complete"
WScript.sleep 200
Loop
s=oDOM.documentElement.innerText
set re = New RegExp
re.Pattern="(\d+)\.(\d+)\.(\d+)\.(\d+)"
For Each m in re.Execute(s)
WScript.Echo m & ""
Next