我想要一个程序从文本文件“rawdata.txt”中提取IP地址,其中包含热门网站的原始traceroute数据,如下所示。
Tracing route to www.google.com [173.194.38.145]
over a maximum of 30 hops:
1
Tracing route to ds-sg-fp3.wg1.b.yahoo.com [106.10.187.79]
over a maximum of 30 hops:
Trace complete.
答案 0 :(得分:1)
您可以在C中创建一个小程序,它将从stdin中读取字节并查找以下模式:
%d.%d.%d.%d\n
...一旦找到这种模式,它将分别存储IP地址并继续搜索。您需要将文本文件传递给程序:
./program < textfile.txt
答案 1 :(得分:0)
您需要逐行读取文件,并用' '
分隔符连接每一行。然后你需要检查第五个令牌是否是一个IP地址(只有数字和点)。如果没有,请从第6个标记处取出。
如果您正在编写多线程应用程序,则不鼓励使用strtok。您可以编写自己的标记生成器,也可以编写sscanf。