【发布时间】:2016-12-28 00:03:48
【问题描述】:
我想就 Windows 中的 tracert 输出寻求一些帮助,即我有这个输出:
Tracing route to Y.Y.Y.Y over a maximum of 30 hops
1 1 ms 1 ms 1 ms X.X.X.X
2 103 ms 71 ms 22 ms X.X.X.X
3 35 ms 51 ms 35 ms X.X.X.X
....
我想生成一个仅包含 X.X.X.X 的文件,或者作为到达那里的中间步骤,仅包含实际包含 IP 的跟踪器行。即:
X.X.X.X
X.X.X.X
X.X.X.X
我已经通过批处理文件尝试过:
for /f "tokens=8" %%a in ('tracert -4 -d 8.8.8.8^|find "ms"') do (
@echo %%a >D:\panagos\desktop\ips.txt
)
但我得到的不是所需的输出:
Y.Y.Y.Y
我也尝试过从 cygwin 调用二进制文件来执行此操作,即:
D:\path\to\slash\bin\awk '{ print $8 }' filein > fileout
但这也不起作用。任何人都可以帮忙吗?提前致谢。
【问题讨论】:
-
but that doesnt work either到底出了什么问题?在 linux 上,我尝试了awk '/ ms/ {print $8}' filein,这应该可以提供您预期的输出
标签: parsing batch-file awk traceroute