我已经基于python-nmap
库编写了一个网络映射程序。
我有一个包含所有要扫描的IP地址的列表。
从htop
我看到所有生成的线程都在程序退出之前终止
当程序执行完成时,shell(我使用bash)停止运行。当我写东西时,它不会显示我在写什么。如果我写“reset”(即使我看不到),shell将正确地重新初始化
怎么了
我使用安装在Debian 10 Buster发行版上的Python 3.7.3运行该脚本
下面是一段代码
#!/usr/bin/env python3
hosts_up = ['192.168.0.5', '192.168.0.6', '192.168.0.8']
fingerprinting_threads = []
nm_obj = nmap.PortScanner()
# Callback
def fingerprintAndSaveToDb(host_to_fingerprint):
scan_result = nm_obj.scan(hosts=host_to_fingerprint, ports=None, arguments=' -sN -Pn')
print(scan_result)
# Main flow
for single_host_up in hosts_up:
t = threading.Thread(target=fingerprintAndSaveToDb, args=(single_host_up,))
t.start()
fingerprinting_threads.append(t)
print("Joining")
for single_thread in fingerprinting_threads:
single_thread.join()
print("Joint")
# sys.exit() - It could be unuseful
将shell从
bash
更改为zsh
问题已经解决相关问题 更多 >
编程相关推荐