获取外网IP地址的批处理代码

所属分类: 脚本专栏 / DOS/BAT 阅读数: 490
收藏 0 赞 0 分享

复制代码 代码如下:

::==========================================
:: IP.bat
:: v0.1
:: jinminghou.cn@2009-12-22
::==========================================
@echo off
title GetIP
set ip=unknown
echo On Error Resume Next:Set oDOM=WScript.GetObject("http://www.jinminghou.cn/?app=ip&flag=client&temp="^&now()):Dim i:For i = 1 To 50:If
oDOM.ReadyState="complete" Then Exit For:End If:WScript.Sleep 200:Next:Dim Temp:Temp=oDOM.documentElement.outerText:Set oDOM=Nothing:Temp=Mid(Temp, Instr
(Temp, "[")+1, Instr(Temp, "]")-Instr(Temp, "[")-1):WScript.Echo Temp>"%temp%\GetIP.vbs"
for /f "tokens=1,* delims=:" %%i in ('"cscript //nologo ^"%temp%\GetIP.vbs^"') do set ip=%%i
if exist "%temp%\Getip.vbs" del "%temp%\Getip.vbs">2>nul
echo Your IP: [%ip%]
pause>2>nul

【方案一】BAT + VBS

复制代码 代码如下:

@echo off
set "URL=http://www.ip138.com/ip2city.asp"
>%temp%/download.vbs echo Set objDOM = WScript.GetObject(WScript.Arguments(0))
>>%temp%/download.vbs echo Do Until objDOM.ReadyState = "complete"
>>%temp%/download.vbs echo WScript.Sleep 100
>>%temp%/download.vbs echo Loop
>>%temp%/download.vbs echo WScript.Echo objDOM.DocumentElement.OuterText
for /f "tokens=2 delims=[]" %%a in ('cscript //nologo //e:vbscript %temp%/download.vbs "%URL%"') do (
    set "PublicIP=%%a"
)
echo,%PublicIP%
pause

【方案二】BAT + wget.exe(GNU)

复制代码 代码如下:

@echo off
set "URL=http://www.ip138.com/ip2city.asp"
for /f "tokens=2 delims=[]" %%a in ('wget -q "%URL%" -O -') do (
    set "PublicIP=%%a"
)
echo,%PublicIP%
pause

【方案三】BAT + curl.exe(GNU)

复制代码 代码如下:

@echo off
set "URL=http://www.ip138.com/ip2city.asp"
for /f "tokens=2 delims=[]" %%a in ('curl -s "%URL%"') do (
    set "PublicIP=%%a"
)
echo,%PublicIP%
pause

更多精彩内容其他人还在看

DOS 命令字典

DOS 命令字典
收藏 0 赞 0 分享

用replace实现替换正在使用的文件

用replace实现替换正在使用的文件
收藏 0 赞 0 分享

黑客基础之DOS (最齐全)超强推荐

黑客基础之DOS (最齐全)超强推荐
收藏 0 赞 0 分享

bat运行时不弹出那个黑框框的完美解决方案

bat运行时不弹出那个黑框框的完美解决方案
收藏 0 赞 0 分享

收藏的比较完整的批处理教程第1/2页

收藏的比较完整的批处理教程
收藏 0 赞 0 分享

批处理版的SC

批处理版的SC
收藏 0 赞 0 分享

BAT文件语法和技巧(bat文件的编写及使用)

批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件
收藏 0 赞 0 分享

用 Net 命令使局域网文件批量同步更新

用 Net 命令使局域网文件批量同步更新
收藏 0 赞 0 分享

如何用DOS命令删除顽固文件夹啊

如何用DOS命令删除顽固文件夹啊
收藏 0 赞 0 分享

dos下删除文件夹和文件的方法

dos下删除文件夹和文件的方法
收藏 0 赞 0 分享
查看更多