1

我创建了一个批处理文件来查找我的外部 IP。

它运作良好。

这是代码。

    @echo off
>"%temp%\ip.vbs" echo Set objHTTP = CreateObject("MSXML2.XMLHTTP")
>>"%temp%\ip.vbs" echo Call objHTTP.Open("GET", "http://checkip.dyndns.org", False)
>>"%temp%\ip.vbs" echo objHTTP.Send()
>>"%temp%\ip.vbs" echo strHTML = objHTTP.ResponseText
>>"%temp%\ip.vbs" echo wscript.echo strHTML
for /f "tokens=7 delims=:<" %%a in ('cscript /nologo "%temp%\ip.vbs"') do set ip=%%a
echo %ip:~1% 
pause

我想要的是将结果打印到名为“IPlog.txt”的文本文件中

每次我运行 bat 文件时,它都必须做同样的事情并将新结果打印到文本文件的下一行。所以请任何人都可以帮我解决这个问题。

4

2 回答 2

1

pause从您的代码中删除该命令并batch-file像这样运行

mybatch.bat >> IPlog.txt

IPLog.txt每次运行此批处理文件时,这会将生成的 IP 地址附加到日志文件中。

于 2013-03-20T13:34:39.650 回答
1

...或更改您的

echo %ip:~1% 

echo %ip:~1% >>IPlog.txt

在没有额外的“>>IPlog.txt”的情况下运行你的批处理

于 2013-03-20T14:09:39.350 回答