【发布时间】:2022-07-16 08:08:51
【问题描述】:
我正在尝试使用
nmap
来确定主机是否在线。我想测试
nmap
输出中的文本
seems down
。我偶然发现了几个示例,这些示例显示了如何执行此操作,但它们似乎专门针对 python2,因为它们在 python3(3.9.2)中运行时会产生错误。这是我下面的刺。有没有办法将其更改为使用简单的字符串比较而不是比较
bytes
中的内容?
#!/usr/bin/python3
import subprocess
ip_addr="10.14.14.22"
p1 = subprocess.Popen (["/usr/bin/nmap", ip_addr, "-p", "U:53,111,137,T:21-25,80,81,82,111,443,139,8080,8006,5666,S:9"], stdout=subprocess.PIPE)
for line in p1.stdout:
if b'seems down' in line:
print ("line: " + str(line))