提取nmap扫描出来的xml文件
代码:
<?php
$file_path = "xiamen_scan_ok.xml";
$file = fopen($file_path, "r"); //输出文本中所有的行,直到文件结束为止。
global $ip;
while(!feof($file))
{
$line= fgets($file);//fgets()函数从文件指针中读取一行'
//echo $line;
preg_match("/address addr=\"(.+)\" addrtype=\"ipv4\"/", $line,$ips);//匹配IP
preg_match("/<port protocol=\"tcp\" portid=\"(.+)\"><state state=\"open\".+<service name=\"(\S+)\" /", $line,$port);//匹配端口 if ($ips) {
$ip = $ips;
}
if ($port) {
echo $ip[1].":".$port[1].":".$port[2];
echo '<br>';
}
}
fclose($file);
?>
最主要是正则匹配。
导入出来的xml大概内容是这样的:
<host starttime="1502098117" endtime="1502099466"><status state="up" reason="reset" reason_ttl="236"/>
<address addr="211.143.192.10" addrtype="ipv4"/>
<hostnames>
</hostnames>
<ports><port protocol="tcp" portid="23"><state state="open" reason="syn-ack" reason_ttl="236"/><service name="telnet" method="table" conf="3"/></port>
</ports>
<times srtt="79500" rttvar="62750" to="330500"/>
</host>
提取nmap扫描出来的xml文件的更多相关文章
- 提取数据表保存为XML文件
//连接数据库 SqlConnection con = new SqlConnection("server=****;database=****;uid=sa;pwd=********&qu ...
- Mybatis无法扫描到mapper.xml文件
在Mybatis中默认扫描与mapper包同路径下的xml,resource文件的文件夹名称不能一次性创建,如com.baidu.mapper需要创建3次 这里如果是idea开发工具,一次创建与分开创 ...
- 基于nmap扫描结果的端口爆破工具:BrutesPray
大家搞内网或者C段渗透测试的时候可能遇到很多时候需要对大批的主机进行精确爆破,这时候BruteSpray就派上用场了. BruteSpray是一款基于nmap扫描输出的gnmap/XML文件.自动 ...
- Nmap结果文件XML文件解析
对nmap扫描结果xml格式的文件进行解析,无需直接xml解析或读取,可直接使用模块: 1.nmapparser 安装:pip install nmapparser Demo: #!/usr/bin/ ...
- Python调用nmap扫描网段主机信息生成xml
#!/usr/bin/env python # -*- coding: utf_8 -*- # Date: 2015年10月23日 # Author:蔚蓝行 # 博客 http://www.cnblo ...
- 遍历文件 创建XML对象 方法 python解析XML文件 提取坐标计存入文件
XML文件??? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. 里面的标签都是可以随心所欲的按照他的命名规则来定义的,文件名为roi.xm ...
- mybatis报错无法扫描到xml文件
错误:java.io.IOException: Could not find resource com/xxx/xxxMapper.xml 原因:target目录下没有***.xml文件 解决方法:在 ...
- 从XML文件和properties文件提取数据
XML文档格式内容如下 <?xml version="1.0" encoding="UTF-8"?> <root> <fi ...
- ssm中整合Mybatis可以扫描到放在mapper下面的xml文件的方法
mybatis配置时出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 解决方法有两种: ...
随机推荐
- 【Oracle】使用dbms_job包创建Oracle定时任务
在Oracle的包里面,有一个名字叫做DBMS_JOB的包,它的作用是安排和管理作业队列.通过作业队列,可以让Oracle数据库定期执行特定的任务.当使用DBMS_JOB管理作业的时候, ...
- Redis踩过的坑
现象:在使用redis云提供的redis服务后,经常出现connect timeout: redis.clients.jedis.exceptions.JedisConnectionException ...
- cron执行service
在Cron的环境下,是没有定义路径的,所以,service xxx start等等要使用绝对路径 => /sbin/service xxx start service的路径可以用whereis ...
- Thinking In Design Pattern——MVP模式演绎
原文<Thinking In Design Pattern——MVP模式演绎>不知为何丢失了,故重新整理了一遍. 目录 What Is MVP Domain Model StubRepos ...
- Java NIO.2 —— 文件或目录删除操作
文件删除 删除单个文件的操作很简单,如果要删除一个目录树的话,需要实现FileVisitor 接口然后递归地调用delete() 或deleteIfExists()方法.在看代码之前,需要注意一下问题 ...
- Nginx启动/重启脚本详解
Nginx手动启动 停止操作 停止操作是通过向nginx进程发送信号(什么是信号请参阅linux文 章)来进行的步骤1:查询nginx主进程号ps -ef | grep nginx在进程列表里 面找m ...
- Android基本功:异步任务(AsyncTask)
一.解决新线程无法更新UI组建问题的方案 为了解决新线程不能更新UI组建的问题,Andorid提供了如下几种解决方案: 使用Handler实现线程之间的通信. Activity.runOnUiThre ...
- CentOS7 安装java 环境 摘抄
转http://www.diyhi.com/hostConfig.html 服务器环境配置 下面介绍全新安装的CentOS系统服务器安装配置商城软件服务环境的方法.演示主机操作系统为CentOS 7. ...
- unity, shader, Tags的位置
Tags写在Pass里,是不对的,比如: 结果一看shader的Inspector面板,Render queue的值居然不是3001,而是2000: 改为: 再看shader的inspector面板, ...
- 使用JS生成二维码QRCode
这其实很简单,项目中使用插件即可生成,主要有两种方式: 一种是在项目中使用java生成,把图片生成到某个目录,然后在用tomcat或者nginx虚拟一下路径即可访问,这种方式我们不用,因为会在目录中生 ...