You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell如何解析nmap输出提取存活主机IP并逐行写入文件

PowerShell解析nmap存活主机IP解决方案

核心等效命令

对应你原有awk命令的PowerShell版本完整写法如下,可实现完全相同的输出效果:

nmap -n -sn $targets -oG - | Select-String '^Host:\s+(\S+).*Up$' | ForEach-Object { $_.Matches.Groups[1].Value } | Out-File "$targetdir/targets.txt" -Encoding UTF8

逻辑说明

  • 前半段nmap参数和你原有逻辑完全一致,保留-oG -输出grepable格式到标准输出
  • Select-String 用正则匹配所有状态为Up的主机行,同时通过捕获组提取IP地址字段
  • ForEach-Object 遍历所有匹配结果,取出捕获到的IP值
  • Out-File 将结果逐行写入目标txt文件,指定UTF8编码避免乱码,你也可以根据需求调整编码参数

小提示:如果不需要强制UTF8编码,也可以简化为用重定向符>替代Out-File部分,注意PowerShell默认重定向输出编码为UTF-16LE,可能会被部分文本工具识别为乱码,推荐优先用指定编码的写法。

Python拼接调用参考

如果你是在Python代码中拼接调用该PowerShell命令,可参考如下写法:

ps_cmd = f"nmap -n -sn {targets} -oG - | Select-String '^Host:\\s+(\\S+).*Up$' | ForEach-Object {{ $_.Matches.Groups[1].Value }} | Out-File '{targetdir}/targets.txt' -Encoding UTF8"
# 后续可通过subprocess模块调用powershell执行该命令

内容的提问来源于stack exchange,提问作者eightbitjonah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 02:54:01