Awk 使用nmap在一行中获取头名称和ip
H 我试图使用Nmap在一行中获取报头名称和ip地址,但我没有找到一个好方法 我试过:(以我的路由器为例): 我正在使用SSHAwk 使用nmap在一行中获取头名称和ip,awk,nmap,Awk,Nmap,H 我试图使用Nmap在一行中获取报头名称和ip地址,但我没有找到一个好方法 我试过:(以我的路由器为例): 我正在使用SSH nmap -sS -n -p80 192.168.2.1 --script=http-headers -T5 --min-rate 1000 --max-retries 0 输出: Nmap scan report for 192.168.2.1 Host is up (0.12s latency). PORT STATE SERVICE 80/tcp open
nmap -sS -n -p80 192.168.2.1 --script=http-headers -T5 --min-rate 1000 --max-retries 0
输出:
Nmap scan report for 192.168.2.1
Host is up (0.12s latency).
PORT STATE SERVICE
80/tcp open http
| http-headers:
| WWW-Authenticate: Basic realm="TD-W8901G"
| Content-Type: text/html
| Transfer-Encoding: chunked
| Server: RomPager/4.07 UPnP/1.0
| Connection: close
| EXT:
|
|_ (Request type: GET)
我想要的输出是:
192.168.2.1 => TD-W8901G or
192.18.2.1:TD-W8901G
用
awk这样看待:
nmap ... | awk '/^Nmap/{ip=$NF} /realm=/{gsub(/"/,"",$NF);gsub(/.*=/,"",$NF);print ip,$NF;exit}'
那就是说。。。“如果该行以“Nmap”开头,请将最后一个字段保存在变量ip
中。如果该行包含“realm=”,请删除所有双引号,并将所有内容去掉等号。打印ip
和最后一个剩余字段,然后退出。”不带代码,在这一点上,它看起来不像是一个编程问题。我更新了我的问题。请检查。请再次更新您的问题,这样每个人都清楚您试图实现的目标。我只能假设您正试图基于这个问题的标记用PHP解析NMAP结果?这正是我想要的,非常感谢