19 我知道如何使用nmap来查找当前在线的主机列表。我想做的是获取仅其IP地址的列表,现在它显示了更多信息,例如 Nmap scan report for 192.168.x.x' and 'Host is up (0.12s latency). 我想要的是能够运行nmap命令,获取当前处于联机状态的IP地址的文本文档。 这是可能吗? ip nmap — 杰森 source
33 这是常见的一种: nmap -n -sn 192.0.2.0/24 -oG - | awk '/Up$/{print $2}' 选项和命令的快速概要: -n关闭反向名称解析,因为您只需要IP地址。在本地LAN上,这也可能是最慢的步骤,因此可以大大提高速度。 -sn表示“不进行端口扫描”。与旧版本相同,不建议-sP使用助记符“ ping扫描”。 -oG -将“可重复的”输出发送到stdout,该输出将通过管道传输到awk。 /Up$/ 仅选择以“ Up”结尾的行,表示在线的主机。 {print $2} 打印第二个空格分隔的字段,即IP地址。 — 盆景 source 为什么后面要有$ /Up?我发现该命令nmap -n -sn 192.0.2.0/24 -oG - | awk '/Up/{print $2}'提供了相同的结果。 — Michael Michael 1 @Michael这是额外的安全级别,可以确保在其他字符串包含“ Up”的情况下,我们不会打印垃圾。这样,即使您针对来自另一种类型的扫描的文件中的可重复输出运行它,该方法也可以正常工作,例如-sV,其中可能包含来自网络服务横幅的不可预测的字符串。 — bonsaiviking
3 您可以将其传送到awk: nmap -sP 192.168.1.0/24 | awk '/is up/ {print up}; {gsub (/\(|\)/,""); up = $NF}' 192.168.1.1 192.168.1.10 192.168.1.20 192.168.1.30 — 杰森 source
/Up
?我发现该命令nmap -n -sn 192.0.2.0/24 -oG - | awk '/Up/{print $2}'
提供了相同的结果。