请教如何用批处理或vbs来获取文本文件里的一段非固定ip
文本文件名ip.txt,内容如下:正在Ping163.xdwscache.glb0.lxdns.com[175.43.124.200]具有32字节的数据:来自175.43...
文本文件名ip.txt,内容如下:
正在 Ping 163.xdwscache.glb0.lxdns.com [175.43.124.200] 具有 32 字节的数据:
来自 175.43.124.200 的回复: 字节=32 时间=142ms TTL=56
路由: 175.43.234.149
175.43.124.200 的 Ping 统计信息:
数据包: 已发送 = 1,已接收 = 1,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 142ms,最长 = 142ms,平均 = 142ms
需要一个批处理或vbs获取第3行里的“路由:”后面的ip地址,该ip地址因会覆盖变动,位数不固定,要如何才能准确获取变动以后的这个ip数字,并输出到另一个文本文件(例如1.txt)里呢?最好可以输出的文本文件里无空格,如果文件内容可以变成例如 IP=175.43.234.149 这样的形式最好。 展开
正在 Ping 163.xdwscache.glb0.lxdns.com [175.43.124.200] 具有 32 字节的数据:
来自 175.43.124.200 的回复: 字节=32 时间=142ms TTL=56
路由: 175.43.234.149
175.43.124.200 的 Ping 统计信息:
数据包: 已发送 = 1,已接收 = 1,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 142ms,最长 = 142ms,平均 = 142ms
需要一个批处理或vbs获取第3行里的“路由:”后面的ip地址,该ip地址因会覆盖变动,位数不固定,要如何才能准确获取变动以后的这个ip数字,并输出到另一个文本文件(例如1.txt)里呢?最好可以输出的文本文件里无空格,如果文件内容可以变成例如 IP=175.43.234.149 这样的形式最好。 展开
2个回答
展开全部
@Echo Off&Setlocal Enabledelayedexpansion
For /f "tokens=1* delims=: " %%i in ('Type ip.txt^|Findstr "路由:"') do (Set j=%%j
Echo IP=!j! >>1.txt
)
Pause
生成格式为 IP=175.43.234.149
更多追问追答
追问
第2行不知道哪里的问题,系统win7,提示此时不应该有%%i 。如果去掉一个%,却提示”More?“要求输入。另外您这个是用type加find的命令显示出路由的当行,再用for命令来获取:后的变量,就是不知道为什么这个%%i无法定义成变量,还有findstr应该是要变成find吧,默认系统没有findstr的命令
追答
@Echo Off
For /f "tokens=1* delims=: " %%i in ('Type ip.txt^|Find "路由:"') do (
Echo IP=%%j >>1.txt
)
Pause
findstr有些系统没有这个文件或是被精简了.所以如果没有可以改为find.
展开全部
dim fso,New_file,file,sp,sp_in
set fso=createobject("scripting.filesystemobject")
file="x:\ip.txt" '当前文件夹内就只写文件名也行
New_file="1.txt"
read=fso.opentextfile(file).readall
sp=split(read,vbcrlf)(2)
sp_in=mid(sp,instrrev(sp,":")+1)
fso.createtextfile(New_file).write trim(sp_in)
set fso=nothing
以上保存为vbs类型文件
追问
但是这个运行后,1.txt得到的不是路由后面的ip,而是变成了第一个冒号后面的 “字节=32 时间=142ms TTL=56”。
后发现修改此行sp=split(read,vbcrlf)(2) 后面的2改为3即可正常,不过,这个是否有办法在输出1.txt文件里追加个ip=的字符串,获得的ip追加在此后面,就是要变成文件内容是IP=175.43.234.149 这样呢?
追答
fso.createtextfile(New_file).write "ip="&trim(sp_in)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询